@kimdaegyu/babmukdang-shared 1.0.7 → 1.1.0

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.
Files changed (106) hide show
  1. package/dist/chunk-2GRWCRTV.js +328 -0
  2. package/dist/chunk-2SJCUQNN.js +40 -0
  3. package/dist/chunk-34EKPNPX.js +0 -0
  4. package/dist/chunk-35QGRA2X.js +0 -0
  5. package/dist/chunk-3YMV26OY.js +0 -0
  6. package/dist/chunk-4DAOP35P.js +74 -0
  7. package/dist/chunk-6NZPEF4K.js +34 -0
  8. package/dist/chunk-7MGHUZXI.js +25 -0
  9. package/dist/chunk-BVTYAILQ.js +0 -0
  10. package/dist/chunk-EJKRR2MZ.js +184 -0
  11. package/dist/chunk-F24BT6H4.js +23 -0
  12. package/dist/chunk-FCE6KXNO.js +30 -0
  13. package/dist/chunk-HRM3FQPL.js +12 -0
  14. package/dist/chunk-IJMADVK5.js +27 -0
  15. package/dist/chunk-IYCA6KHR.js +0 -0
  16. package/dist/chunk-JCN37ARR.js +52 -0
  17. package/dist/chunk-JXYRJKRV.js +0 -0
  18. package/dist/chunk-LCMNVWSP.js +0 -0
  19. package/dist/chunk-MP7TEKEI.js +72 -0
  20. package/dist/chunk-NCVWB52E.js +0 -0
  21. package/dist/chunk-NW5O4R7M.js +37 -0
  22. package/dist/chunk-O6DYRCFN.js +0 -0
  23. package/dist/chunk-PDGMGLYH.js +0 -0
  24. package/dist/chunk-PFSZSKD5.js +0 -0
  25. package/dist/chunk-TA4BB3UC.js +0 -0
  26. package/dist/chunk-UFVPFUMI.js +35 -0
  27. package/dist/chunk-UN7KYFMV.js +0 -0
  28. package/dist/chunk-UXA4FHST.js +19 -0
  29. package/dist/chunk-WNY6POLW.js +0 -0
  30. package/dist/chunk-YVACD5IG.js +127 -0
  31. package/dist/chunk-Z2UFF3MA.js +212 -0
  32. package/dist/chunk-ZNAAA53X.js +45 -0
  33. package/dist/chunk-ZSZ3ETY7.js +32 -0
  34. package/dist/domain/article/index.cjs +250 -0
  35. package/dist/domain/article/index.d.cts +1026 -0
  36. package/dist/domain/article/index.d.ts +1026 -0
  37. package/dist/domain/article/index.js +32 -0
  38. package/dist/domain/auth/index.cjs +135 -0
  39. package/dist/domain/auth/index.d.cts +73 -0
  40. package/dist/domain/auth/index.d.ts +73 -0
  41. package/dist/domain/auth/index.js +17 -0
  42. package/dist/domain/challenge/index.cjs +65 -0
  43. package/dist/domain/challenge/index.d.cts +104 -0
  44. package/dist/domain/challenge/index.d.ts +104 -0
  45. package/dist/domain/challenge/index.js +18 -0
  46. package/dist/domain/common/index.cjs +769 -0
  47. package/dist/domain/common/index.d.cts +2576 -0
  48. package/dist/domain/common/index.d.ts +2576 -0
  49. package/dist/domain/common/index.js +107 -0
  50. package/dist/domain/coupon/index.cjs +74 -0
  51. package/dist/domain/coupon/index.d.cts +38 -0
  52. package/dist/domain/coupon/index.d.ts +38 -0
  53. package/dist/domain/coupon/index.js +14 -0
  54. package/dist/domain/friend/index.cjs +152 -0
  55. package/dist/domain/friend/index.d.cts +148 -0
  56. package/dist/domain/friend/index.d.ts +148 -0
  57. package/dist/domain/friend/index.js +25 -0
  58. package/dist/domain/index.cjs +997 -0
  59. package/dist/domain/index.d.cts +17 -0
  60. package/dist/domain/index.d.ts +17 -0
  61. package/dist/domain/index.js +334 -0
  62. package/dist/domain/invitation/index.cjs +104 -0
  63. package/dist/domain/invitation/index.d.cts +67 -0
  64. package/dist/domain/invitation/index.d.ts +67 -0
  65. package/dist/domain/invitation/index.js +17 -0
  66. package/dist/domain/meal/index.cjs +59 -0
  67. package/dist/domain/meal/index.d.cts +38 -0
  68. package/dist/domain/meal/index.d.ts +38 -0
  69. package/dist/domain/meal/index.js +15 -0
  70. package/dist/domain/member/index.cjs +127 -0
  71. package/dist/domain/member/index.d.cts +225 -0
  72. package/dist/domain/member/index.d.ts +225 -0
  73. package/dist/domain/member/index.js +30 -0
  74. package/dist/domain/plan/index.cjs +269 -0
  75. package/dist/domain/plan/index.d.cts +189 -0
  76. package/dist/domain/plan/index.d.ts +189 -0
  77. package/dist/domain/plan/index.js +19 -0
  78. package/dist/domain/preference/index.cjs +69 -0
  79. package/dist/domain/preference/index.d.cts +31 -0
  80. package/dist/domain/preference/index.d.ts +31 -0
  81. package/dist/domain/preference/index.js +12 -0
  82. package/dist/domain/recruit/index.cjs +138 -0
  83. package/dist/domain/recruit/index.d.cts +130 -0
  84. package/dist/domain/recruit/index.d.ts +130 -0
  85. package/dist/domain/recruit/index.js +19 -0
  86. package/dist/domain/referral/index.cjs +78 -0
  87. package/dist/domain/referral/index.d.cts +51 -0
  88. package/dist/domain/referral/index.d.ts +51 -0
  89. package/dist/domain/referral/index.js +14 -0
  90. package/dist/domain/restaurant/index.cjs +79 -0
  91. package/dist/domain/restaurant/index.d.cts +85 -0
  92. package/dist/domain/restaurant/index.d.ts +85 -0
  93. package/dist/domain/restaurant/index.js +11 -0
  94. package/dist/domain/room/index.cjs +332 -0
  95. package/dist/domain/room/index.d.cts +1482 -0
  96. package/dist/domain/room/index.d.ts +1482 -0
  97. package/dist/domain/room/index.js +74 -0
  98. package/dist/id-B-8M90Ef.d.cts +43 -0
  99. package/dist/id-B-8M90Ef.d.ts +43 -0
  100. package/dist/index-BuInbhtG.d.cts +305 -0
  101. package/dist/index-CKRUOupn.d.ts +305 -0
  102. package/dist/index.cjs +845 -21
  103. package/dist/index.d.cts +113 -569
  104. package/dist/index.d.ts +113 -569
  105. package/dist/index.js +50 -30
  106. package/package.json +50 -39
@@ -0,0 +1,2576 @@
1
+ import { z } from 'zod';
2
+ export { A as ArticleId, a as ArticleIdSchema, B as Brand, C as CommentId, b as CommentIdSchema, c as CouponId, d as CouponIdSchema, F as FriendRequestId, e as FriendRequestIdSchema, I as InvitationId, f as InvitationIdSchema, M as MemberId, g as MemberIdSchema, N as NonEmptyStringIdSchema, P as PlanId, h as PlanIdSchema, i as PositiveIntIdSchema, R as RecruitId, j as RecruitIdSchema, k as ReferralCode, l as ReferralCodeSchema, m as RestaurantId, n as RestaurantIdSchema, o as RoomId, p as RoomIdSchema, S as SubscriptionId, q as SubscriptionIdSchema, U as UserId, r as UserIdSchema, t as toArticleId, s as toInvitationId, u as toMemberId, v as toRecruitId, w as toRestaurantId, x as toRoomId } from '../../id-B-8M90Ef.js';
3
+
4
+ type HttpMethod = "GET" | "POST" | "PATCH" | "PUT" | "DELETE";
5
+ declare const NoBodySchema: z.ZodUndefined;
6
+ declare const NoQuerySchema: z.ZodUndefined;
7
+ declare const NoParamsSchema: z.ZodUndefined;
8
+ interface EndpointContract<TMethod extends HttpMethod, TPath extends string, TPathParams extends z.ZodTypeAny, TQuery extends z.ZodTypeAny, TBody extends z.ZodTypeAny, TResponse extends z.ZodTypeAny> {
9
+ readonly method: TMethod;
10
+ readonly path: TPath;
11
+ readonly pathParams: TPathParams;
12
+ readonly query: TQuery;
13
+ readonly body: TBody;
14
+ readonly response: TResponse;
15
+ }
16
+ declare const endpoint: <TMethod extends HttpMethod, TPath extends string, TPathParams extends z.ZodTypeAny = typeof NoParamsSchema, TQuery extends z.ZodTypeAny = typeof NoQuerySchema, TBody extends z.ZodTypeAny = typeof NoBodySchema, TResponse extends z.ZodTypeAny = z.ZodNever>(contract: {
17
+ method: TMethod;
18
+ path: TPath;
19
+ pathParams?: TPathParams;
20
+ query?: TQuery;
21
+ body?: TBody;
22
+ response: TResponse;
23
+ }) => EndpointContract<TMethod, TPath, TPathParams, TQuery, TBody, TResponse>;
24
+ type BodyOf<E> = E extends EndpointContract<any, any, any, any, infer TBody, any> ? z.infer<TBody> : never;
25
+ type QueryOf<E> = E extends EndpointContract<any, any, any, infer TQuery, any, any> ? z.infer<TQuery> : never;
26
+ type PathParamsOf<E> = E extends EndpointContract<any, any, infer TPathParams, any, any, any> ? z.infer<TPathParams> : never;
27
+ type ResponseOf<E> = E extends EndpointContract<any, any, any, any, any, infer TResponse> ? z.infer<TResponse> : never;
28
+
29
+ declare const apiContract: {
30
+ readonly auth: {
31
+ readonly signup: EndpointContract<"POST", "/auth/signup", z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
32
+ email: z.ZodString;
33
+ password: z.ZodString;
34
+ username: z.ZodString;
35
+ profileImageUrl: z.ZodOptional<z.ZodNullable<z.ZodString>>;
36
+ }, "strip", z.ZodTypeAny, {
37
+ username: string;
38
+ email: string;
39
+ password: string;
40
+ profileImageUrl?: string | null | undefined;
41
+ }, {
42
+ username: string;
43
+ email: string;
44
+ password: string;
45
+ profileImageUrl?: string | null | undefined;
46
+ }>, z.ZodObject<{
47
+ member: z.ZodObject<Pick<{
48
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
49
+ username: z.ZodString;
50
+ profileImageUrl: z.ZodNullable<z.ZodString>;
51
+ }, "memberId" | "username" | "profileImageUrl">, "strip", z.ZodTypeAny, {
52
+ memberId: number & z.BRAND<"MemberId">;
53
+ username: string;
54
+ profileImageUrl: string | null;
55
+ }, {
56
+ memberId: number;
57
+ username: string;
58
+ profileImageUrl: string | null;
59
+ }>;
60
+ }, "strip", z.ZodTypeAny, {
61
+ member: {
62
+ memberId: number & z.BRAND<"MemberId">;
63
+ username: string;
64
+ profileImageUrl: string | null;
65
+ };
66
+ }, {
67
+ member: {
68
+ memberId: number;
69
+ username: string;
70
+ profileImageUrl: string | null;
71
+ };
72
+ }>>;
73
+ readonly login: EndpointContract<"POST", "/auth/login", z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
74
+ email: z.ZodString;
75
+ password: z.ZodString;
76
+ }, "strip", z.ZodTypeAny, {
77
+ email: string;
78
+ password: string;
79
+ }, {
80
+ email: string;
81
+ password: string;
82
+ }>, z.ZodObject<{
83
+ accessToken: z.ZodString;
84
+ accessTokenMaxAge: z.ZodNumber;
85
+ }, "strip", z.ZodTypeAny, {
86
+ accessToken: string;
87
+ accessTokenMaxAge: number;
88
+ }, {
89
+ accessToken: string;
90
+ accessTokenMaxAge: number;
91
+ }>>;
92
+ readonly refresh: EndpointContract<"POST", "/auth/refresh", z.ZodUndefined, z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
93
+ accessToken: z.ZodString;
94
+ accessTokenMaxAge: z.ZodNumber;
95
+ }, "strip", z.ZodTypeAny, {
96
+ accessToken: string;
97
+ accessTokenMaxAge: number;
98
+ }, {
99
+ accessToken: string;
100
+ accessTokenMaxAge: number;
101
+ }>>;
102
+ readonly logout: EndpointContract<"POST", "/auth/logout", z.ZodUndefined, z.ZodUndefined, z.ZodUndefined, z.ZodNull>;
103
+ };
104
+ readonly members: {
105
+ readonly me: EndpointContract<"GET", "/members/me", z.ZodUndefined, z.ZodUndefined, z.ZodUndefined, z.ZodObject<Pick<{
106
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
107
+ username: z.ZodString;
108
+ profileImageUrl: z.ZodNullable<z.ZodString>;
109
+ }, "memberId" | "username" | "profileImageUrl">, "strip", z.ZodTypeAny, {
110
+ memberId: number & z.BRAND<"MemberId">;
111
+ username: string;
112
+ profileImageUrl: string | null;
113
+ }, {
114
+ memberId: number;
115
+ username: string;
116
+ profileImageUrl: string | null;
117
+ }>>;
118
+ readonly summary: EndpointContract<"GET", "/members/me/summary", z.ZodUndefined, z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
119
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
120
+ username: z.ZodString;
121
+ profileImageUrl: z.ZodNullable<z.ZodString>;
122
+ } & {
123
+ friends: z.ZodDefault<z.ZodNumber>;
124
+ completedPlans: z.ZodDefault<z.ZodNumber>;
125
+ uncompletedPlans: z.ZodDefault<z.ZodNumber>;
126
+ }, "strip", z.ZodTypeAny, {
127
+ memberId: number & z.BRAND<"MemberId">;
128
+ username: string;
129
+ profileImageUrl: string | null;
130
+ friends: number;
131
+ completedPlans: number;
132
+ uncompletedPlans: number;
133
+ }, {
134
+ memberId: number;
135
+ username: string;
136
+ profileImageUrl: string | null;
137
+ friends?: number | undefined;
138
+ completedPlans?: number | undefined;
139
+ uncompletedPlans?: number | undefined;
140
+ }>>;
141
+ readonly detail: EndpointContract<"GET", "/members/:memberId", z.ZodObject<{
142
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
143
+ }, "strip", z.ZodTypeAny, {
144
+ memberId: number & z.BRAND<"MemberId">;
145
+ }, {
146
+ memberId: number;
147
+ }>, z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
148
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
149
+ username: z.ZodString;
150
+ profileImageUrl: z.ZodNullable<z.ZodString>;
151
+ } & {
152
+ bio: z.ZodNullable<z.ZodString>;
153
+ planCount: z.ZodNumber;
154
+ likes: z.ZodArray<z.ZodObject<{
155
+ code: z.ZodString;
156
+ label: z.ZodString;
157
+ }, "strip", z.ZodTypeAny, {
158
+ code: string;
159
+ label: string;
160
+ }, {
161
+ code: string;
162
+ label: string;
163
+ }>, "many">;
164
+ dislikes: z.ZodArray<z.ZodObject<{
165
+ code: z.ZodString;
166
+ label: z.ZodString;
167
+ }, "strip", z.ZodTypeAny, {
168
+ code: string;
169
+ label: string;
170
+ }, {
171
+ code: string;
172
+ label: string;
173
+ }>, "many">;
174
+ allergies: z.ZodArray<z.ZodObject<{
175
+ code: z.ZodString;
176
+ label: z.ZodString;
177
+ }, "strip", z.ZodTypeAny, {
178
+ code: string;
179
+ label: string;
180
+ }, {
181
+ code: string;
182
+ label: string;
183
+ }>, "many">;
184
+ }, "strip", z.ZodTypeAny, {
185
+ memberId: number & z.BRAND<"MemberId">;
186
+ username: string;
187
+ profileImageUrl: string | null;
188
+ bio: string | null;
189
+ planCount: number;
190
+ likes: {
191
+ code: string;
192
+ label: string;
193
+ }[];
194
+ dislikes: {
195
+ code: string;
196
+ label: string;
197
+ }[];
198
+ allergies: {
199
+ code: string;
200
+ label: string;
201
+ }[];
202
+ }, {
203
+ memberId: number;
204
+ username: string;
205
+ profileImageUrl: string | null;
206
+ bio: string | null;
207
+ planCount: number;
208
+ likes: {
209
+ code: string;
210
+ label: string;
211
+ }[];
212
+ dislikes: {
213
+ code: string;
214
+ label: string;
215
+ }[];
216
+ allergies: {
217
+ code: string;
218
+ label: string;
219
+ }[];
220
+ }>>;
221
+ readonly updateProfile: EndpointContract<"PATCH", "/members/me/profile", z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
222
+ username: z.ZodString;
223
+ profileImageUrl: z.ZodNullable<z.ZodString>;
224
+ bio: z.ZodNullable<z.ZodString>;
225
+ }, "strip", z.ZodTypeAny, {
226
+ username: string;
227
+ profileImageUrl: string | null;
228
+ bio: string | null;
229
+ }, {
230
+ username: string;
231
+ profileImageUrl: string | null;
232
+ bio: string | null;
233
+ }>, z.ZodObject<{
234
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
235
+ username: z.ZodString;
236
+ profileImageUrl: z.ZodNullable<z.ZodString>;
237
+ } & {
238
+ bio: z.ZodNullable<z.ZodString>;
239
+ planCount: z.ZodNumber;
240
+ likes: z.ZodArray<z.ZodObject<{
241
+ code: z.ZodString;
242
+ label: z.ZodString;
243
+ }, "strip", z.ZodTypeAny, {
244
+ code: string;
245
+ label: string;
246
+ }, {
247
+ code: string;
248
+ label: string;
249
+ }>, "many">;
250
+ dislikes: z.ZodArray<z.ZodObject<{
251
+ code: z.ZodString;
252
+ label: z.ZodString;
253
+ }, "strip", z.ZodTypeAny, {
254
+ code: string;
255
+ label: string;
256
+ }, {
257
+ code: string;
258
+ label: string;
259
+ }>, "many">;
260
+ allergies: z.ZodArray<z.ZodObject<{
261
+ code: z.ZodString;
262
+ label: z.ZodString;
263
+ }, "strip", z.ZodTypeAny, {
264
+ code: string;
265
+ label: string;
266
+ }, {
267
+ code: string;
268
+ label: string;
269
+ }>, "many">;
270
+ }, "strip", z.ZodTypeAny, {
271
+ memberId: number & z.BRAND<"MemberId">;
272
+ username: string;
273
+ profileImageUrl: string | null;
274
+ bio: string | null;
275
+ planCount: number;
276
+ likes: {
277
+ code: string;
278
+ label: string;
279
+ }[];
280
+ dislikes: {
281
+ code: string;
282
+ label: string;
283
+ }[];
284
+ allergies: {
285
+ code: string;
286
+ label: string;
287
+ }[];
288
+ }, {
289
+ memberId: number;
290
+ username: string;
291
+ profileImageUrl: string | null;
292
+ bio: string | null;
293
+ planCount: number;
294
+ likes: {
295
+ code: string;
296
+ label: string;
297
+ }[];
298
+ dislikes: {
299
+ code: string;
300
+ label: string;
301
+ }[];
302
+ allergies: {
303
+ code: string;
304
+ label: string;
305
+ }[];
306
+ }>>;
307
+ readonly onboarding: EndpointContract<"POST", "/members/me/onboarding", z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
308
+ username: z.ZodString;
309
+ profileImageUrl: z.ZodNullable<z.ZodString>;
310
+ bio: z.ZodNullable<z.ZodString>;
311
+ } & {
312
+ likedCodes: z.ZodArray<z.ZodString, "many">;
313
+ dislikedCodes: z.ZodArray<z.ZodString, "many">;
314
+ allergyCodes: z.ZodArray<z.ZodString, "many">;
315
+ }, "strip", z.ZodTypeAny, {
316
+ username: string;
317
+ profileImageUrl: string | null;
318
+ bio: string | null;
319
+ likedCodes: string[];
320
+ dislikedCodes: string[];
321
+ allergyCodes: string[];
322
+ }, {
323
+ username: string;
324
+ profileImageUrl: string | null;
325
+ bio: string | null;
326
+ likedCodes: string[];
327
+ dislikedCodes: string[];
328
+ allergyCodes: string[];
329
+ }>, z.ZodObject<{
330
+ onboardedAt: z.ZodNullable<z.ZodString>;
331
+ lastUpdatedAt: z.ZodNullable<z.ZodString>;
332
+ revision: z.ZodNumber;
333
+ }, "strip", z.ZodTypeAny, {
334
+ onboardedAt: string | null;
335
+ lastUpdatedAt: string | null;
336
+ revision: number;
337
+ }, {
338
+ onboardedAt: string | null;
339
+ lastUpdatedAt: string | null;
340
+ revision: number;
341
+ }>>;
342
+ readonly updateOnboardingPreferences: EndpointContract<"PATCH", "/members/me/preferences", z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
343
+ likedCodes: z.ZodArray<z.ZodString, "many">;
344
+ dislikedCodes: z.ZodArray<z.ZodString, "many">;
345
+ allergyCodes: z.ZodArray<z.ZodString, "many">;
346
+ }, "strip", z.ZodTypeAny, {
347
+ likedCodes: string[];
348
+ dislikedCodes: string[];
349
+ allergyCodes: string[];
350
+ }, {
351
+ likedCodes: string[];
352
+ dislikedCodes: string[];
353
+ allergyCodes: string[];
354
+ }>, z.ZodObject<{
355
+ onboardedAt: z.ZodNullable<z.ZodString>;
356
+ lastUpdatedAt: z.ZodNullable<z.ZodString>;
357
+ revision: z.ZodNumber;
358
+ }, "strip", z.ZodTypeAny, {
359
+ onboardedAt: string | null;
360
+ lastUpdatedAt: string | null;
361
+ revision: number;
362
+ }, {
363
+ onboardedAt: string | null;
364
+ lastUpdatedAt: string | null;
365
+ revision: number;
366
+ }>>;
367
+ };
368
+ readonly articles: {
369
+ readonly list: EndpointContract<"GET", "/articles", z.ZodUndefined, z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
370
+ totalElements: z.ZodNumber;
371
+ totalPages: z.ZodNumber;
372
+ first: z.ZodBoolean;
373
+ size: z.ZodNumber;
374
+ content: z.ZodArray<z.ZodObject<{
375
+ articleId: z.ZodBranded<z.ZodNumber, "ArticleId">;
376
+ author: z.ZodObject<Pick<{
377
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
378
+ username: z.ZodString;
379
+ profileImageUrl: z.ZodNullable<z.ZodString>;
380
+ }, "memberId" | "username" | "profileImageUrl">, "strip", z.ZodTypeAny, {
381
+ memberId: number & z.BRAND<"MemberId">;
382
+ username: string;
383
+ profileImageUrl: string | null;
384
+ }, {
385
+ memberId: number;
386
+ username: string;
387
+ profileImageUrl: string | null;
388
+ }>;
389
+ imageUrl: z.ZodString;
390
+ mealDate: z.ZodString;
391
+ restaurant: z.ZodObject<{
392
+ restaurantId: z.ZodBranded<z.ZodString, "RestaurantId">;
393
+ placeName: z.ZodString;
394
+ categoryName: z.ZodString;
395
+ categoryGroupName: z.ZodString;
396
+ distance: z.ZodOptional<z.ZodString>;
397
+ roadAddressName: z.ZodString;
398
+ addressName: z.ZodString;
399
+ phone: z.ZodNullable<z.ZodString>;
400
+ placeUrl: z.ZodNullable<z.ZodString>;
401
+ lat: z.ZodNumber;
402
+ lng: z.ZodNumber;
403
+ }, "strip", z.ZodTypeAny, {
404
+ restaurantId: string & z.BRAND<"RestaurantId">;
405
+ placeName: string;
406
+ categoryName: string;
407
+ categoryGroupName: string;
408
+ roadAddressName: string;
409
+ addressName: string;
410
+ phone: string | null;
411
+ placeUrl: string | null;
412
+ lat: number;
413
+ lng: number;
414
+ distance?: string | undefined;
415
+ }, {
416
+ restaurantId: string;
417
+ placeName: string;
418
+ categoryName: string;
419
+ categoryGroupName: string;
420
+ roadAddressName: string;
421
+ addressName: string;
422
+ phone: string | null;
423
+ placeUrl: string | null;
424
+ lat: number;
425
+ lng: number;
426
+ distance?: string | undefined;
427
+ }>;
428
+ createdAt: z.ZodString;
429
+ updatedAt: z.ZodString;
430
+ expiresAt: z.ZodString;
431
+ taggedMembers: z.ZodArray<z.ZodObject<Pick<{
432
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
433
+ username: z.ZodString;
434
+ profileImageUrl: z.ZodNullable<z.ZodString>;
435
+ }, "memberId" | "username" | "profileImageUrl">, "strip", z.ZodTypeAny, {
436
+ memberId: number & z.BRAND<"MemberId">;
437
+ username: string;
438
+ profileImageUrl: string | null;
439
+ }, {
440
+ memberId: number;
441
+ username: string;
442
+ profileImageUrl: string | null;
443
+ }>, "many">;
444
+ } & {
445
+ likeCount: z.ZodNumber;
446
+ commentCount: z.ZodNumber;
447
+ likedByMe: z.ZodBoolean;
448
+ }, "strip", z.ZodTypeAny, {
449
+ imageUrl: string;
450
+ mealDate: string;
451
+ restaurant: {
452
+ restaurantId: string & z.BRAND<"RestaurantId">;
453
+ placeName: string;
454
+ categoryName: string;
455
+ categoryGroupName: string;
456
+ roadAddressName: string;
457
+ addressName: string;
458
+ phone: string | null;
459
+ placeUrl: string | null;
460
+ lat: number;
461
+ lng: number;
462
+ distance?: string | undefined;
463
+ };
464
+ articleId: number & z.BRAND<"ArticleId">;
465
+ author: {
466
+ memberId: number & z.BRAND<"MemberId">;
467
+ username: string;
468
+ profileImageUrl: string | null;
469
+ };
470
+ createdAt: string;
471
+ updatedAt: string;
472
+ expiresAt: string;
473
+ taggedMembers: {
474
+ memberId: number & z.BRAND<"MemberId">;
475
+ username: string;
476
+ profileImageUrl: string | null;
477
+ }[];
478
+ likeCount: number;
479
+ commentCount: number;
480
+ likedByMe: boolean;
481
+ }, {
482
+ imageUrl: string;
483
+ mealDate: string;
484
+ restaurant: {
485
+ restaurantId: string;
486
+ placeName: string;
487
+ categoryName: string;
488
+ categoryGroupName: string;
489
+ roadAddressName: string;
490
+ addressName: string;
491
+ phone: string | null;
492
+ placeUrl: string | null;
493
+ lat: number;
494
+ lng: number;
495
+ distance?: string | undefined;
496
+ };
497
+ articleId: number;
498
+ author: {
499
+ memberId: number;
500
+ username: string;
501
+ profileImageUrl: string | null;
502
+ };
503
+ createdAt: string;
504
+ updatedAt: string;
505
+ expiresAt: string;
506
+ taggedMembers: {
507
+ memberId: number;
508
+ username: string;
509
+ profileImageUrl: string | null;
510
+ }[];
511
+ likeCount: number;
512
+ commentCount: number;
513
+ likedByMe: boolean;
514
+ }>, "many">;
515
+ number: z.ZodNumber;
516
+ sort: z.ZodObject<{
517
+ empty: z.ZodBoolean;
518
+ sorted: z.ZodBoolean;
519
+ unsorted: z.ZodBoolean;
520
+ }, "strip", z.ZodTypeAny, {
521
+ empty: boolean;
522
+ sorted: boolean;
523
+ unsorted: boolean;
524
+ }, {
525
+ empty: boolean;
526
+ sorted: boolean;
527
+ unsorted: boolean;
528
+ }>;
529
+ numberOfElements: z.ZodNumber;
530
+ pageable: z.ZodObject<{
531
+ offset: z.ZodNumber;
532
+ sort: z.ZodObject<{
533
+ empty: z.ZodBoolean;
534
+ sorted: z.ZodBoolean;
535
+ unsorted: z.ZodBoolean;
536
+ }, "strip", z.ZodTypeAny, {
537
+ empty: boolean;
538
+ sorted: boolean;
539
+ unsorted: boolean;
540
+ }, {
541
+ empty: boolean;
542
+ sorted: boolean;
543
+ unsorted: boolean;
544
+ }>;
545
+ paged: z.ZodBoolean;
546
+ pageNumber: z.ZodNumber;
547
+ pageSize: z.ZodNumber;
548
+ unpaged: z.ZodBoolean;
549
+ }, "strip", z.ZodTypeAny, {
550
+ offset: number;
551
+ sort: {
552
+ empty: boolean;
553
+ sorted: boolean;
554
+ unsorted: boolean;
555
+ };
556
+ paged: boolean;
557
+ pageNumber: number;
558
+ pageSize: number;
559
+ unpaged: boolean;
560
+ }, {
561
+ offset: number;
562
+ sort: {
563
+ empty: boolean;
564
+ sorted: boolean;
565
+ unsorted: boolean;
566
+ };
567
+ paged: boolean;
568
+ pageNumber: number;
569
+ pageSize: number;
570
+ unpaged: boolean;
571
+ }>;
572
+ last: z.ZodBoolean;
573
+ empty: z.ZodBoolean;
574
+ }, "strip", z.ZodTypeAny, {
575
+ number: number;
576
+ size: number;
577
+ sort: {
578
+ empty: boolean;
579
+ sorted: boolean;
580
+ unsorted: boolean;
581
+ };
582
+ empty: boolean;
583
+ totalElements: number;
584
+ totalPages: number;
585
+ first: boolean;
586
+ content: {
587
+ imageUrl: string;
588
+ mealDate: string;
589
+ restaurant: {
590
+ restaurantId: string & z.BRAND<"RestaurantId">;
591
+ placeName: string;
592
+ categoryName: string;
593
+ categoryGroupName: string;
594
+ roadAddressName: string;
595
+ addressName: string;
596
+ phone: string | null;
597
+ placeUrl: string | null;
598
+ lat: number;
599
+ lng: number;
600
+ distance?: string | undefined;
601
+ };
602
+ articleId: number & z.BRAND<"ArticleId">;
603
+ author: {
604
+ memberId: number & z.BRAND<"MemberId">;
605
+ username: string;
606
+ profileImageUrl: string | null;
607
+ };
608
+ createdAt: string;
609
+ updatedAt: string;
610
+ expiresAt: string;
611
+ taggedMembers: {
612
+ memberId: number & z.BRAND<"MemberId">;
613
+ username: string;
614
+ profileImageUrl: string | null;
615
+ }[];
616
+ likeCount: number;
617
+ commentCount: number;
618
+ likedByMe: boolean;
619
+ }[];
620
+ numberOfElements: number;
621
+ pageable: {
622
+ offset: number;
623
+ sort: {
624
+ empty: boolean;
625
+ sorted: boolean;
626
+ unsorted: boolean;
627
+ };
628
+ paged: boolean;
629
+ pageNumber: number;
630
+ pageSize: number;
631
+ unpaged: boolean;
632
+ };
633
+ last: boolean;
634
+ }, {
635
+ number: number;
636
+ size: number;
637
+ sort: {
638
+ empty: boolean;
639
+ sorted: boolean;
640
+ unsorted: boolean;
641
+ };
642
+ empty: boolean;
643
+ totalElements: number;
644
+ totalPages: number;
645
+ first: boolean;
646
+ content: {
647
+ imageUrl: string;
648
+ mealDate: string;
649
+ restaurant: {
650
+ restaurantId: string;
651
+ placeName: string;
652
+ categoryName: string;
653
+ categoryGroupName: string;
654
+ roadAddressName: string;
655
+ addressName: string;
656
+ phone: string | null;
657
+ placeUrl: string | null;
658
+ lat: number;
659
+ lng: number;
660
+ distance?: string | undefined;
661
+ };
662
+ articleId: number;
663
+ author: {
664
+ memberId: number;
665
+ username: string;
666
+ profileImageUrl: string | null;
667
+ };
668
+ createdAt: string;
669
+ updatedAt: string;
670
+ expiresAt: string;
671
+ taggedMembers: {
672
+ memberId: number;
673
+ username: string;
674
+ profileImageUrl: string | null;
675
+ }[];
676
+ likeCount: number;
677
+ commentCount: number;
678
+ likedByMe: boolean;
679
+ }[];
680
+ numberOfElements: number;
681
+ pageable: {
682
+ offset: number;
683
+ sort: {
684
+ empty: boolean;
685
+ sorted: boolean;
686
+ unsorted: boolean;
687
+ };
688
+ paged: boolean;
689
+ pageNumber: number;
690
+ pageSize: number;
691
+ unpaged: boolean;
692
+ };
693
+ last: boolean;
694
+ }>>;
695
+ readonly detail: EndpointContract<"GET", "/articles/:articleId", z.ZodObject<{
696
+ articleId: z.ZodBranded<z.ZodNumber, "ArticleId">;
697
+ }, "strip", z.ZodTypeAny, {
698
+ articleId: number & z.BRAND<"ArticleId">;
699
+ }, {
700
+ articleId: number;
701
+ }>, z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
702
+ articleId: z.ZodBranded<z.ZodNumber, "ArticleId">;
703
+ author: z.ZodObject<Pick<{
704
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
705
+ username: z.ZodString;
706
+ profileImageUrl: z.ZodNullable<z.ZodString>;
707
+ }, "memberId" | "username" | "profileImageUrl">, "strip", z.ZodTypeAny, {
708
+ memberId: number & z.BRAND<"MemberId">;
709
+ username: string;
710
+ profileImageUrl: string | null;
711
+ }, {
712
+ memberId: number;
713
+ username: string;
714
+ profileImageUrl: string | null;
715
+ }>;
716
+ imageUrl: z.ZodString;
717
+ mealDate: z.ZodString;
718
+ restaurant: z.ZodObject<{
719
+ restaurantId: z.ZodBranded<z.ZodString, "RestaurantId">;
720
+ placeName: z.ZodString;
721
+ categoryName: z.ZodString;
722
+ categoryGroupName: z.ZodString;
723
+ distance: z.ZodOptional<z.ZodString>;
724
+ roadAddressName: z.ZodString;
725
+ addressName: z.ZodString;
726
+ phone: z.ZodNullable<z.ZodString>;
727
+ placeUrl: z.ZodNullable<z.ZodString>;
728
+ lat: z.ZodNumber;
729
+ lng: z.ZodNumber;
730
+ }, "strip", z.ZodTypeAny, {
731
+ restaurantId: string & z.BRAND<"RestaurantId">;
732
+ placeName: string;
733
+ categoryName: string;
734
+ categoryGroupName: string;
735
+ roadAddressName: string;
736
+ addressName: string;
737
+ phone: string | null;
738
+ placeUrl: string | null;
739
+ lat: number;
740
+ lng: number;
741
+ distance?: string | undefined;
742
+ }, {
743
+ restaurantId: string;
744
+ placeName: string;
745
+ categoryName: string;
746
+ categoryGroupName: string;
747
+ roadAddressName: string;
748
+ addressName: string;
749
+ phone: string | null;
750
+ placeUrl: string | null;
751
+ lat: number;
752
+ lng: number;
753
+ distance?: string | undefined;
754
+ }>;
755
+ createdAt: z.ZodString;
756
+ updatedAt: z.ZodString;
757
+ expiresAt: z.ZodString;
758
+ taggedMembers: z.ZodArray<z.ZodObject<Pick<{
759
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
760
+ username: z.ZodString;
761
+ profileImageUrl: z.ZodNullable<z.ZodString>;
762
+ }, "memberId" | "username" | "profileImageUrl">, "strip", z.ZodTypeAny, {
763
+ memberId: number & z.BRAND<"MemberId">;
764
+ username: string;
765
+ profileImageUrl: string | null;
766
+ }, {
767
+ memberId: number;
768
+ username: string;
769
+ profileImageUrl: string | null;
770
+ }>, "many">;
771
+ } & {
772
+ likeCount: z.ZodNumber;
773
+ commentCount: z.ZodNumber;
774
+ likedByMe: z.ZodBoolean;
775
+ } & {
776
+ comments: z.ZodOptional<z.ZodArray<z.ZodObject<{
777
+ commentId: z.ZodBranded<z.ZodNumber, "CommentId">;
778
+ author: z.ZodObject<Pick<{
779
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
780
+ username: z.ZodString;
781
+ profileImageUrl: z.ZodNullable<z.ZodString>;
782
+ }, "memberId" | "username" | "profileImageUrl">, "strip", z.ZodTypeAny, {
783
+ memberId: number & z.BRAND<"MemberId">;
784
+ username: string;
785
+ profileImageUrl: string | null;
786
+ }, {
787
+ memberId: number;
788
+ username: string;
789
+ profileImageUrl: string | null;
790
+ }>;
791
+ parentCommentId: z.ZodNullable<z.ZodBranded<z.ZodNumber, "CommentId">>;
792
+ content: z.ZodString;
793
+ createdAt: z.ZodString;
794
+ updatedAt: z.ZodString;
795
+ }, "strip", z.ZodTypeAny, {
796
+ content: string;
797
+ parentCommentId: (number & z.BRAND<"CommentId">) | null;
798
+ commentId: number & z.BRAND<"CommentId">;
799
+ author: {
800
+ memberId: number & z.BRAND<"MemberId">;
801
+ username: string;
802
+ profileImageUrl: string | null;
803
+ };
804
+ createdAt: string;
805
+ updatedAt: string;
806
+ }, {
807
+ content: string;
808
+ parentCommentId: number | null;
809
+ commentId: number;
810
+ author: {
811
+ memberId: number;
812
+ username: string;
813
+ profileImageUrl: string | null;
814
+ };
815
+ createdAt: string;
816
+ updatedAt: string;
817
+ }>, "many">>;
818
+ }, "strip", z.ZodTypeAny, {
819
+ imageUrl: string;
820
+ mealDate: string;
821
+ restaurant: {
822
+ restaurantId: string & z.BRAND<"RestaurantId">;
823
+ placeName: string;
824
+ categoryName: string;
825
+ categoryGroupName: string;
826
+ roadAddressName: string;
827
+ addressName: string;
828
+ phone: string | null;
829
+ placeUrl: string | null;
830
+ lat: number;
831
+ lng: number;
832
+ distance?: string | undefined;
833
+ };
834
+ articleId: number & z.BRAND<"ArticleId">;
835
+ author: {
836
+ memberId: number & z.BRAND<"MemberId">;
837
+ username: string;
838
+ profileImageUrl: string | null;
839
+ };
840
+ createdAt: string;
841
+ updatedAt: string;
842
+ expiresAt: string;
843
+ taggedMembers: {
844
+ memberId: number & z.BRAND<"MemberId">;
845
+ username: string;
846
+ profileImageUrl: string | null;
847
+ }[];
848
+ likeCount: number;
849
+ commentCount: number;
850
+ likedByMe: boolean;
851
+ comments?: {
852
+ content: string;
853
+ parentCommentId: (number & z.BRAND<"CommentId">) | null;
854
+ commentId: number & z.BRAND<"CommentId">;
855
+ author: {
856
+ memberId: number & z.BRAND<"MemberId">;
857
+ username: string;
858
+ profileImageUrl: string | null;
859
+ };
860
+ createdAt: string;
861
+ updatedAt: string;
862
+ }[] | undefined;
863
+ }, {
864
+ imageUrl: string;
865
+ mealDate: string;
866
+ restaurant: {
867
+ restaurantId: string;
868
+ placeName: string;
869
+ categoryName: string;
870
+ categoryGroupName: string;
871
+ roadAddressName: string;
872
+ addressName: string;
873
+ phone: string | null;
874
+ placeUrl: string | null;
875
+ lat: number;
876
+ lng: number;
877
+ distance?: string | undefined;
878
+ };
879
+ articleId: number;
880
+ author: {
881
+ memberId: number;
882
+ username: string;
883
+ profileImageUrl: string | null;
884
+ };
885
+ createdAt: string;
886
+ updatedAt: string;
887
+ expiresAt: string;
888
+ taggedMembers: {
889
+ memberId: number;
890
+ username: string;
891
+ profileImageUrl: string | null;
892
+ }[];
893
+ likeCount: number;
894
+ commentCount: number;
895
+ likedByMe: boolean;
896
+ comments?: {
897
+ content: string;
898
+ parentCommentId: number | null;
899
+ commentId: number;
900
+ author: {
901
+ memberId: number;
902
+ username: string;
903
+ profileImageUrl: string | null;
904
+ };
905
+ createdAt: string;
906
+ updatedAt: string;
907
+ }[] | undefined;
908
+ }>>;
909
+ readonly create: EndpointContract<"POST", "/articles", z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
910
+ imageUrl: z.ZodString;
911
+ mealDate: z.ZodString;
912
+ restaurant: z.ZodObject<{
913
+ restaurantId: z.ZodBranded<z.ZodString, "RestaurantId">;
914
+ placeName: z.ZodString;
915
+ categoryName: z.ZodString;
916
+ categoryGroupName: z.ZodString;
917
+ distance: z.ZodOptional<z.ZodString>;
918
+ roadAddressName: z.ZodString;
919
+ addressName: z.ZodString;
920
+ phone: z.ZodNullable<z.ZodString>;
921
+ placeUrl: z.ZodNullable<z.ZodString>;
922
+ lat: z.ZodNumber;
923
+ lng: z.ZodNumber;
924
+ }, "strip", z.ZodTypeAny, {
925
+ restaurantId: string & z.BRAND<"RestaurantId">;
926
+ placeName: string;
927
+ categoryName: string;
928
+ categoryGroupName: string;
929
+ roadAddressName: string;
930
+ addressName: string;
931
+ phone: string | null;
932
+ placeUrl: string | null;
933
+ lat: number;
934
+ lng: number;
935
+ distance?: string | undefined;
936
+ }, {
937
+ restaurantId: string;
938
+ placeName: string;
939
+ categoryName: string;
940
+ categoryGroupName: string;
941
+ roadAddressName: string;
942
+ addressName: string;
943
+ phone: string | null;
944
+ placeUrl: string | null;
945
+ lat: number;
946
+ lng: number;
947
+ distance?: string | undefined;
948
+ }>;
949
+ taggedMemberIds: z.ZodDefault<z.ZodArray<z.ZodBranded<z.ZodNumber, "MemberId">, "many">>;
950
+ foodAnalysis: z.ZodOptional<z.ZodObject<{
951
+ code: z.ZodString;
952
+ label: z.ZodString;
953
+ confidence: z.ZodNumber;
954
+ tsUtc: z.ZodOptional<z.ZodString>;
955
+ }, "strip", z.ZodTypeAny, {
956
+ code: string;
957
+ label: string;
958
+ confidence: number;
959
+ tsUtc?: string | undefined;
960
+ }, {
961
+ code: string;
962
+ label: string;
963
+ confidence: number;
964
+ tsUtc?: string | undefined;
965
+ }>>;
966
+ }, "strip", z.ZodTypeAny, {
967
+ imageUrl: string;
968
+ mealDate: string;
969
+ restaurant: {
970
+ restaurantId: string & z.BRAND<"RestaurantId">;
971
+ placeName: string;
972
+ categoryName: string;
973
+ categoryGroupName: string;
974
+ roadAddressName: string;
975
+ addressName: string;
976
+ phone: string | null;
977
+ placeUrl: string | null;
978
+ lat: number;
979
+ lng: number;
980
+ distance?: string | undefined;
981
+ };
982
+ taggedMemberIds: (number & z.BRAND<"MemberId">)[];
983
+ foodAnalysis?: {
984
+ code: string;
985
+ label: string;
986
+ confidence: number;
987
+ tsUtc?: string | undefined;
988
+ } | undefined;
989
+ }, {
990
+ imageUrl: string;
991
+ mealDate: string;
992
+ restaurant: {
993
+ restaurantId: string;
994
+ placeName: string;
995
+ categoryName: string;
996
+ categoryGroupName: string;
997
+ roadAddressName: string;
998
+ addressName: string;
999
+ phone: string | null;
1000
+ placeUrl: string | null;
1001
+ lat: number;
1002
+ lng: number;
1003
+ distance?: string | undefined;
1004
+ };
1005
+ taggedMemberIds?: number[] | undefined;
1006
+ foodAnalysis?: {
1007
+ code: string;
1008
+ label: string;
1009
+ confidence: number;
1010
+ tsUtc?: string | undefined;
1011
+ } | undefined;
1012
+ }>, z.ZodObject<{
1013
+ articleId: z.ZodBranded<z.ZodNumber, "ArticleId">;
1014
+ }, "strip", z.ZodTypeAny, {
1015
+ articleId: number & z.BRAND<"ArticleId">;
1016
+ }, {
1017
+ articleId: number;
1018
+ }>>;
1019
+ readonly delete: EndpointContract<"DELETE", "/articles/:articleId", z.ZodObject<{
1020
+ articleId: z.ZodBranded<z.ZodNumber, "ArticleId">;
1021
+ }, "strip", z.ZodTypeAny, {
1022
+ articleId: number & z.BRAND<"ArticleId">;
1023
+ }, {
1024
+ articleId: number;
1025
+ }>, z.ZodUndefined, z.ZodUndefined, z.ZodNull>;
1026
+ readonly createComment: EndpointContract<"POST", "/articles/:articleId/comments", z.ZodObject<{
1027
+ articleId: z.ZodBranded<z.ZodNumber, "ArticleId">;
1028
+ }, "strip", z.ZodTypeAny, {
1029
+ articleId: number & z.BRAND<"ArticleId">;
1030
+ }, {
1031
+ articleId: number;
1032
+ }>, z.ZodUndefined, z.ZodObject<{
1033
+ content: z.ZodString;
1034
+ parentCommentId: z.ZodOptional<z.ZodNullable<z.ZodBranded<z.ZodNumber, "CommentId">>>;
1035
+ }, "strip", z.ZodTypeAny, {
1036
+ content: string;
1037
+ parentCommentId?: (number & z.BRAND<"CommentId">) | null | undefined;
1038
+ }, {
1039
+ content: string;
1040
+ parentCommentId?: number | null | undefined;
1041
+ }>, z.ZodObject<{
1042
+ commentId: z.ZodBranded<z.ZodNumber, "CommentId">;
1043
+ }, "strip", z.ZodTypeAny, {
1044
+ commentId: number & z.BRAND<"CommentId">;
1045
+ }, {
1046
+ commentId: number;
1047
+ }>>;
1048
+ readonly deleteComment: EndpointContract<"DELETE", "/articles/:articleId/comments/:commentId", z.ZodObject<{
1049
+ articleId: z.ZodBranded<z.ZodNumber, "ArticleId">;
1050
+ } & {
1051
+ commentId: z.ZodBranded<z.ZodNumber, "CommentId">;
1052
+ }, "strip", z.ZodTypeAny, {
1053
+ articleId: number & z.BRAND<"ArticleId">;
1054
+ commentId: number & z.BRAND<"CommentId">;
1055
+ }, {
1056
+ articleId: number;
1057
+ commentId: number;
1058
+ }>, z.ZodUndefined, z.ZodUndefined, z.ZodNull>;
1059
+ readonly presignArticleImage: EndpointContract<"POST", "/uploads/articles/presign", z.ZodUndefined, z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
1060
+ key: z.ZodString;
1061
+ putUrl: z.ZodString;
1062
+ cdnUrl: z.ZodString;
1063
+ }, "strip", z.ZodTypeAny, {
1064
+ key: string;
1065
+ putUrl: string;
1066
+ cdnUrl: string;
1067
+ }, {
1068
+ key: string;
1069
+ putUrl: string;
1070
+ cdnUrl: string;
1071
+ }>>;
1072
+ readonly presignProfileImage: EndpointContract<"POST", "/uploads/profiles/presign", z.ZodUndefined, z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
1073
+ key: z.ZodString;
1074
+ putUrl: z.ZodString;
1075
+ cdnUrl: z.ZodString;
1076
+ }, "strip", z.ZodTypeAny, {
1077
+ key: string;
1078
+ putUrl: string;
1079
+ cdnUrl: string;
1080
+ }, {
1081
+ key: string;
1082
+ putUrl: string;
1083
+ cdnUrl: string;
1084
+ }>>;
1085
+ };
1086
+ readonly recruits: {
1087
+ readonly list: EndpointContract<"GET", "/recruits", z.ZodUndefined, z.ZodUndefined, z.ZodUndefined, z.ZodArray<z.ZodObject<{
1088
+ targetCount: z.ZodNumber;
1089
+ meetingAt: z.ZodString;
1090
+ location: z.ZodString;
1091
+ message: z.ZodString;
1092
+ } & {
1093
+ recruitId: z.ZodBranded<z.ZodNumber, "RecruitId">;
1094
+ status: z.ZodEnum<["OPEN", "CLOSED", "EXPIRED"]>;
1095
+ createdAt: z.ZodString;
1096
+ expiredAt: z.ZodString;
1097
+ updatedAt: z.ZodString;
1098
+ author: z.ZodObject<Pick<{
1099
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
1100
+ username: z.ZodString;
1101
+ profileImageUrl: z.ZodNullable<z.ZodString>;
1102
+ }, "memberId" | "username" | "profileImageUrl">, "strip", z.ZodTypeAny, {
1103
+ memberId: number & z.BRAND<"MemberId">;
1104
+ username: string;
1105
+ profileImageUrl: string | null;
1106
+ }, {
1107
+ memberId: number;
1108
+ username: string;
1109
+ profileImageUrl: string | null;
1110
+ }>;
1111
+ participants: z.ZodArray<z.ZodObject<Pick<{
1112
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
1113
+ username: z.ZodString;
1114
+ profileImageUrl: z.ZodNullable<z.ZodString>;
1115
+ }, "memberId" | "username" | "profileImageUrl">, "strip", z.ZodTypeAny, {
1116
+ memberId: number & z.BRAND<"MemberId">;
1117
+ username: string;
1118
+ profileImageUrl: string | null;
1119
+ }, {
1120
+ memberId: number;
1121
+ username: string;
1122
+ profileImageUrl: string | null;
1123
+ }>, "many">;
1124
+ }, "strip", z.ZodTypeAny, {
1125
+ message: string;
1126
+ status: "OPEN" | "CLOSED" | "EXPIRED";
1127
+ author: {
1128
+ memberId: number & z.BRAND<"MemberId">;
1129
+ username: string;
1130
+ profileImageUrl: string | null;
1131
+ };
1132
+ createdAt: string;
1133
+ updatedAt: string;
1134
+ location: string;
1135
+ participants: {
1136
+ memberId: number & z.BRAND<"MemberId">;
1137
+ username: string;
1138
+ profileImageUrl: string | null;
1139
+ }[];
1140
+ meetingAt: string;
1141
+ targetCount: number;
1142
+ recruitId: number & z.BRAND<"RecruitId">;
1143
+ expiredAt: string;
1144
+ }, {
1145
+ message: string;
1146
+ status: "OPEN" | "CLOSED" | "EXPIRED";
1147
+ author: {
1148
+ memberId: number;
1149
+ username: string;
1150
+ profileImageUrl: string | null;
1151
+ };
1152
+ createdAt: string;
1153
+ updatedAt: string;
1154
+ location: string;
1155
+ participants: {
1156
+ memberId: number;
1157
+ username: string;
1158
+ profileImageUrl: string | null;
1159
+ }[];
1160
+ meetingAt: string;
1161
+ targetCount: number;
1162
+ recruitId: number;
1163
+ expiredAt: string;
1164
+ }>, "many">>;
1165
+ readonly detail: EndpointContract<"GET", "/recruits/:recruitId", z.ZodObject<{
1166
+ recruitId: z.ZodBranded<z.ZodNumber, "RecruitId">;
1167
+ }, "strip", z.ZodTypeAny, {
1168
+ recruitId: number & z.BRAND<"RecruitId">;
1169
+ }, {
1170
+ recruitId: number;
1171
+ }>, z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
1172
+ targetCount: z.ZodNumber;
1173
+ meetingAt: z.ZodString;
1174
+ location: z.ZodString;
1175
+ message: z.ZodString;
1176
+ } & {
1177
+ recruitId: z.ZodBranded<z.ZodNumber, "RecruitId">;
1178
+ status: z.ZodEnum<["OPEN", "CLOSED", "EXPIRED"]>;
1179
+ createdAt: z.ZodString;
1180
+ expiredAt: z.ZodString;
1181
+ updatedAt: z.ZodString;
1182
+ author: z.ZodObject<Pick<{
1183
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
1184
+ username: z.ZodString;
1185
+ profileImageUrl: z.ZodNullable<z.ZodString>;
1186
+ }, "memberId" | "username" | "profileImageUrl">, "strip", z.ZodTypeAny, {
1187
+ memberId: number & z.BRAND<"MemberId">;
1188
+ username: string;
1189
+ profileImageUrl: string | null;
1190
+ }, {
1191
+ memberId: number;
1192
+ username: string;
1193
+ profileImageUrl: string | null;
1194
+ }>;
1195
+ participants: z.ZodArray<z.ZodObject<Pick<{
1196
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
1197
+ username: z.ZodString;
1198
+ profileImageUrl: z.ZodNullable<z.ZodString>;
1199
+ }, "memberId" | "username" | "profileImageUrl">, "strip", z.ZodTypeAny, {
1200
+ memberId: number & z.BRAND<"MemberId">;
1201
+ username: string;
1202
+ profileImageUrl: string | null;
1203
+ }, {
1204
+ memberId: number;
1205
+ username: string;
1206
+ profileImageUrl: string | null;
1207
+ }>, "many">;
1208
+ }, "strip", z.ZodTypeAny, {
1209
+ message: string;
1210
+ status: "OPEN" | "CLOSED" | "EXPIRED";
1211
+ author: {
1212
+ memberId: number & z.BRAND<"MemberId">;
1213
+ username: string;
1214
+ profileImageUrl: string | null;
1215
+ };
1216
+ createdAt: string;
1217
+ updatedAt: string;
1218
+ location: string;
1219
+ participants: {
1220
+ memberId: number & z.BRAND<"MemberId">;
1221
+ username: string;
1222
+ profileImageUrl: string | null;
1223
+ }[];
1224
+ meetingAt: string;
1225
+ targetCount: number;
1226
+ recruitId: number & z.BRAND<"RecruitId">;
1227
+ expiredAt: string;
1228
+ }, {
1229
+ message: string;
1230
+ status: "OPEN" | "CLOSED" | "EXPIRED";
1231
+ author: {
1232
+ memberId: number;
1233
+ username: string;
1234
+ profileImageUrl: string | null;
1235
+ };
1236
+ createdAt: string;
1237
+ updatedAt: string;
1238
+ location: string;
1239
+ participants: {
1240
+ memberId: number;
1241
+ username: string;
1242
+ profileImageUrl: string | null;
1243
+ }[];
1244
+ meetingAt: string;
1245
+ targetCount: number;
1246
+ recruitId: number;
1247
+ expiredAt: string;
1248
+ }>>;
1249
+ readonly create: EndpointContract<"POST", "/recruits", z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
1250
+ targetCount: z.ZodNumber;
1251
+ meetingAt: z.ZodString;
1252
+ location: z.ZodString;
1253
+ message: z.ZodString;
1254
+ }, "strip", z.ZodTypeAny, {
1255
+ message: string;
1256
+ location: string;
1257
+ meetingAt: string;
1258
+ targetCount: number;
1259
+ }, {
1260
+ message: string;
1261
+ location: string;
1262
+ meetingAt: string;
1263
+ targetCount: number;
1264
+ }>, z.ZodObject<{
1265
+ recruitId: z.ZodBranded<z.ZodNumber, "RecruitId">;
1266
+ }, "strip", z.ZodTypeAny, {
1267
+ recruitId: number & z.BRAND<"RecruitId">;
1268
+ }, {
1269
+ recruitId: number;
1270
+ }>>;
1271
+ readonly close: EndpointContract<"PATCH", "/recruits/:recruitId/close", z.ZodObject<{
1272
+ recruitId: z.ZodBranded<z.ZodNumber, "RecruitId">;
1273
+ }, "strip", z.ZodTypeAny, {
1274
+ recruitId: number & z.BRAND<"RecruitId">;
1275
+ }, {
1276
+ recruitId: number;
1277
+ }>, z.ZodUndefined, z.ZodUndefined, z.ZodNull>;
1278
+ readonly join: EndpointContract<"POST", "/recruits/:recruitId/join", z.ZodObject<{
1279
+ recruitId: z.ZodBranded<z.ZodNumber, "RecruitId">;
1280
+ }, "strip", z.ZodTypeAny, {
1281
+ recruitId: number & z.BRAND<"RecruitId">;
1282
+ }, {
1283
+ recruitId: number;
1284
+ }>, z.ZodUndefined, z.ZodUndefined, z.ZodNull>;
1285
+ };
1286
+ readonly invitations: {
1287
+ readonly list: EndpointContract<"GET", "/invitations", z.ZodUndefined, z.ZodUndefined, z.ZodUndefined, z.ZodArray<z.ZodObject<{
1288
+ invitationId: z.ZodBranded<z.ZodNumber, "InvitationId">;
1289
+ inviterName: z.ZodString;
1290
+ inviterProfileImageUrl: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1291
+ }, "strip", z.ZodTypeAny, {
1292
+ invitationId: number & z.BRAND<"InvitationId">;
1293
+ inviterName: string;
1294
+ inviterProfileImageUrl?: string | null | undefined;
1295
+ }, {
1296
+ invitationId: number;
1297
+ inviterName: string;
1298
+ inviterProfileImageUrl?: string | null | undefined;
1299
+ }>, "many">>;
1300
+ readonly send: EndpointContract<"POST", "/invitations", z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
1301
+ inviteeId: z.ZodBranded<z.ZodNumber, "MemberId">;
1302
+ message: z.ZodString;
1303
+ }, "strip", z.ZodTypeAny, {
1304
+ message: string;
1305
+ inviteeId: number & z.BRAND<"MemberId">;
1306
+ }, {
1307
+ message: string;
1308
+ inviteeId: number;
1309
+ }>, z.ZodObject<{
1310
+ invitationId: z.ZodBranded<z.ZodNumber, "InvitationId">;
1311
+ }, "strip", z.ZodTypeAny, {
1312
+ invitationId: number & z.BRAND<"InvitationId">;
1313
+ }, {
1314
+ invitationId: number;
1315
+ }>>;
1316
+ readonly accept: EndpointContract<"POST", "/invitations/:invitationId/accept", z.ZodObject<{
1317
+ invitationId: z.ZodBranded<z.ZodNumber, "InvitationId">;
1318
+ }, "strip", z.ZodTypeAny, {
1319
+ invitationId: number & z.BRAND<"InvitationId">;
1320
+ }, {
1321
+ invitationId: number;
1322
+ }>, z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
1323
+ invitationId: z.ZodBranded<z.ZodNumber, "InvitationId">;
1324
+ room: z.ZodObject<{
1325
+ type: z.ZodLiteral<"invitation">;
1326
+ roomId: z.ZodBranded<z.ZodString, "RoomId">;
1327
+ }, "strip", z.ZodTypeAny, {
1328
+ type: "invitation";
1329
+ roomId: string & z.BRAND<"RoomId">;
1330
+ }, {
1331
+ type: "invitation";
1332
+ roomId: string;
1333
+ }>;
1334
+ }, "strip", z.ZodTypeAny, {
1335
+ invitationId: number & z.BRAND<"InvitationId">;
1336
+ room: {
1337
+ type: "invitation";
1338
+ roomId: string & z.BRAND<"RoomId">;
1339
+ };
1340
+ }, {
1341
+ invitationId: number;
1342
+ room: {
1343
+ type: "invitation";
1344
+ roomId: string;
1345
+ };
1346
+ }>>;
1347
+ readonly reject: EndpointContract<"POST", "/invitations/:invitationId/reject", z.ZodObject<{
1348
+ invitationId: z.ZodBranded<z.ZodNumber, "InvitationId">;
1349
+ }, "strip", z.ZodTypeAny, {
1350
+ invitationId: number & z.BRAND<"InvitationId">;
1351
+ }, {
1352
+ invitationId: number;
1353
+ }>, z.ZodUndefined, z.ZodUndefined, z.ZodNull>;
1354
+ };
1355
+ readonly plans: {
1356
+ readonly list: EndpointContract<"GET", "/plans", z.ZodUndefined, z.ZodUndefined, z.ZodUndefined, z.ZodArray<z.ZodObject<{
1357
+ planId: z.ZodBranded<z.ZodNumber, "PlanId">;
1358
+ meetingAt: z.ZodString;
1359
+ location: z.ZodNullable<z.ZodObject<{
1360
+ locationId: z.ZodBranded<z.ZodString, "LocationId">;
1361
+ placeName: z.ZodString;
1362
+ lat: z.ZodNumber;
1363
+ lng: z.ZodNumber;
1364
+ address: z.ZodString;
1365
+ }, "strip", z.ZodTypeAny, {
1366
+ placeName: string;
1367
+ lat: number;
1368
+ lng: number;
1369
+ locationId: string & z.BRAND<"LocationId">;
1370
+ address: string;
1371
+ }, {
1372
+ placeName: string;
1373
+ lat: number;
1374
+ lng: number;
1375
+ locationId: string;
1376
+ address: string;
1377
+ }>>;
1378
+ restaurant: z.ZodNullable<z.ZodObject<{
1379
+ restaurantId: z.ZodBranded<z.ZodString, "RestaurantId">;
1380
+ placeName: z.ZodString;
1381
+ categoryName: z.ZodString;
1382
+ categoryGroupName: z.ZodString;
1383
+ distance: z.ZodOptional<z.ZodString>;
1384
+ roadAddressName: z.ZodString;
1385
+ addressName: z.ZodString;
1386
+ phone: z.ZodNullable<z.ZodString>;
1387
+ placeUrl: z.ZodNullable<z.ZodString>;
1388
+ lat: z.ZodNumber;
1389
+ lng: z.ZodNumber;
1390
+ }, "strip", z.ZodTypeAny, {
1391
+ restaurantId: string & z.BRAND<"RestaurantId">;
1392
+ placeName: string;
1393
+ categoryName: string;
1394
+ categoryGroupName: string;
1395
+ roadAddressName: string;
1396
+ addressName: string;
1397
+ phone: string | null;
1398
+ placeUrl: string | null;
1399
+ lat: number;
1400
+ lng: number;
1401
+ distance?: string | undefined;
1402
+ }, {
1403
+ restaurantId: string;
1404
+ placeName: string;
1405
+ categoryName: string;
1406
+ categoryGroupName: string;
1407
+ roadAddressName: string;
1408
+ addressName: string;
1409
+ phone: string | null;
1410
+ placeUrl: string | null;
1411
+ lat: number;
1412
+ lng: number;
1413
+ distance?: string | undefined;
1414
+ }>>;
1415
+ author: z.ZodNullable<z.ZodObject<Pick<{
1416
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
1417
+ username: z.ZodString;
1418
+ profileImageUrl: z.ZodNullable<z.ZodString>;
1419
+ }, "memberId" | "username" | "profileImageUrl">, "strip", z.ZodTypeAny, {
1420
+ memberId: number & z.BRAND<"MemberId">;
1421
+ username: string;
1422
+ profileImageUrl: string | null;
1423
+ }, {
1424
+ memberId: number;
1425
+ username: string;
1426
+ profileImageUrl: string | null;
1427
+ }>>;
1428
+ participants: z.ZodArray<z.ZodObject<Pick<{
1429
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
1430
+ username: z.ZodString;
1431
+ profileImageUrl: z.ZodNullable<z.ZodString>;
1432
+ }, "memberId" | "username" | "profileImageUrl">, "strip", z.ZodTypeAny, {
1433
+ memberId: number & z.BRAND<"MemberId">;
1434
+ username: string;
1435
+ profileImageUrl: string | null;
1436
+ }, {
1437
+ memberId: number;
1438
+ username: string;
1439
+ profileImageUrl: string | null;
1440
+ }>, "many">;
1441
+ status: z.ZodEnum<["PLANNING", "COMPLETED"]>;
1442
+ type: z.ZodEnum<["RECRUIT", "INVITATION"]>;
1443
+ createdAt: z.ZodString;
1444
+ updatedAt: z.ZodString;
1445
+ }, "strip", z.ZodTypeAny, {
1446
+ type: "RECRUIT" | "INVITATION";
1447
+ status: "PLANNING" | "COMPLETED";
1448
+ restaurant: {
1449
+ restaurantId: string & z.BRAND<"RestaurantId">;
1450
+ placeName: string;
1451
+ categoryName: string;
1452
+ categoryGroupName: string;
1453
+ roadAddressName: string;
1454
+ addressName: string;
1455
+ phone: string | null;
1456
+ placeUrl: string | null;
1457
+ lat: number;
1458
+ lng: number;
1459
+ distance?: string | undefined;
1460
+ } | null;
1461
+ author: {
1462
+ memberId: number & z.BRAND<"MemberId">;
1463
+ username: string;
1464
+ profileImageUrl: string | null;
1465
+ } | null;
1466
+ createdAt: string;
1467
+ updatedAt: string;
1468
+ location: {
1469
+ placeName: string;
1470
+ lat: number;
1471
+ lng: number;
1472
+ locationId: string & z.BRAND<"LocationId">;
1473
+ address: string;
1474
+ } | null;
1475
+ participants: {
1476
+ memberId: number & z.BRAND<"MemberId">;
1477
+ username: string;
1478
+ profileImageUrl: string | null;
1479
+ }[];
1480
+ planId: number & z.BRAND<"PlanId">;
1481
+ meetingAt: string;
1482
+ }, {
1483
+ type: "RECRUIT" | "INVITATION";
1484
+ status: "PLANNING" | "COMPLETED";
1485
+ restaurant: {
1486
+ restaurantId: string;
1487
+ placeName: string;
1488
+ categoryName: string;
1489
+ categoryGroupName: string;
1490
+ roadAddressName: string;
1491
+ addressName: string;
1492
+ phone: string | null;
1493
+ placeUrl: string | null;
1494
+ lat: number;
1495
+ lng: number;
1496
+ distance?: string | undefined;
1497
+ } | null;
1498
+ author: {
1499
+ memberId: number;
1500
+ username: string;
1501
+ profileImageUrl: string | null;
1502
+ } | null;
1503
+ createdAt: string;
1504
+ updatedAt: string;
1505
+ location: {
1506
+ placeName: string;
1507
+ lat: number;
1508
+ lng: number;
1509
+ locationId: string;
1510
+ address: string;
1511
+ } | null;
1512
+ participants: {
1513
+ memberId: number;
1514
+ username: string;
1515
+ profileImageUrl: string | null;
1516
+ }[];
1517
+ planId: number;
1518
+ meetingAt: string;
1519
+ }>, "many">>;
1520
+ readonly detail: EndpointContract<"GET", "/plans/:planId", z.ZodObject<{
1521
+ planId: z.ZodBranded<z.ZodNumber, "PlanId">;
1522
+ }, "strip", z.ZodTypeAny, {
1523
+ planId: number & z.BRAND<"PlanId">;
1524
+ }, {
1525
+ planId: number;
1526
+ }>, z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
1527
+ planId: z.ZodBranded<z.ZodNumber, "PlanId">;
1528
+ meetingAt: z.ZodString;
1529
+ location: z.ZodNullable<z.ZodObject<{
1530
+ locationId: z.ZodBranded<z.ZodString, "LocationId">;
1531
+ placeName: z.ZodString;
1532
+ lat: z.ZodNumber;
1533
+ lng: z.ZodNumber;
1534
+ address: z.ZodString;
1535
+ }, "strip", z.ZodTypeAny, {
1536
+ placeName: string;
1537
+ lat: number;
1538
+ lng: number;
1539
+ locationId: string & z.BRAND<"LocationId">;
1540
+ address: string;
1541
+ }, {
1542
+ placeName: string;
1543
+ lat: number;
1544
+ lng: number;
1545
+ locationId: string;
1546
+ address: string;
1547
+ }>>;
1548
+ restaurant: z.ZodNullable<z.ZodObject<{
1549
+ restaurantId: z.ZodBranded<z.ZodString, "RestaurantId">;
1550
+ placeName: z.ZodString;
1551
+ categoryName: z.ZodString;
1552
+ categoryGroupName: z.ZodString;
1553
+ distance: z.ZodOptional<z.ZodString>;
1554
+ roadAddressName: z.ZodString;
1555
+ addressName: z.ZodString;
1556
+ phone: z.ZodNullable<z.ZodString>;
1557
+ placeUrl: z.ZodNullable<z.ZodString>;
1558
+ lat: z.ZodNumber;
1559
+ lng: z.ZodNumber;
1560
+ }, "strip", z.ZodTypeAny, {
1561
+ restaurantId: string & z.BRAND<"RestaurantId">;
1562
+ placeName: string;
1563
+ categoryName: string;
1564
+ categoryGroupName: string;
1565
+ roadAddressName: string;
1566
+ addressName: string;
1567
+ phone: string | null;
1568
+ placeUrl: string | null;
1569
+ lat: number;
1570
+ lng: number;
1571
+ distance?: string | undefined;
1572
+ }, {
1573
+ restaurantId: string;
1574
+ placeName: string;
1575
+ categoryName: string;
1576
+ categoryGroupName: string;
1577
+ roadAddressName: string;
1578
+ addressName: string;
1579
+ phone: string | null;
1580
+ placeUrl: string | null;
1581
+ lat: number;
1582
+ lng: number;
1583
+ distance?: string | undefined;
1584
+ }>>;
1585
+ author: z.ZodNullable<z.ZodObject<Pick<{
1586
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
1587
+ username: z.ZodString;
1588
+ profileImageUrl: z.ZodNullable<z.ZodString>;
1589
+ }, "memberId" | "username" | "profileImageUrl">, "strip", z.ZodTypeAny, {
1590
+ memberId: number & z.BRAND<"MemberId">;
1591
+ username: string;
1592
+ profileImageUrl: string | null;
1593
+ }, {
1594
+ memberId: number;
1595
+ username: string;
1596
+ profileImageUrl: string | null;
1597
+ }>>;
1598
+ participants: z.ZodArray<z.ZodObject<Pick<{
1599
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
1600
+ username: z.ZodString;
1601
+ profileImageUrl: z.ZodNullable<z.ZodString>;
1602
+ }, "memberId" | "username" | "profileImageUrl">, "strip", z.ZodTypeAny, {
1603
+ memberId: number & z.BRAND<"MemberId">;
1604
+ username: string;
1605
+ profileImageUrl: string | null;
1606
+ }, {
1607
+ memberId: number;
1608
+ username: string;
1609
+ profileImageUrl: string | null;
1610
+ }>, "many">;
1611
+ status: z.ZodEnum<["PLANNING", "COMPLETED"]>;
1612
+ type: z.ZodEnum<["RECRUIT", "INVITATION"]>;
1613
+ createdAt: z.ZodString;
1614
+ updatedAt: z.ZodString;
1615
+ }, "strip", z.ZodTypeAny, {
1616
+ type: "RECRUIT" | "INVITATION";
1617
+ status: "PLANNING" | "COMPLETED";
1618
+ restaurant: {
1619
+ restaurantId: string & z.BRAND<"RestaurantId">;
1620
+ placeName: string;
1621
+ categoryName: string;
1622
+ categoryGroupName: string;
1623
+ roadAddressName: string;
1624
+ addressName: string;
1625
+ phone: string | null;
1626
+ placeUrl: string | null;
1627
+ lat: number;
1628
+ lng: number;
1629
+ distance?: string | undefined;
1630
+ } | null;
1631
+ author: {
1632
+ memberId: number & z.BRAND<"MemberId">;
1633
+ username: string;
1634
+ profileImageUrl: string | null;
1635
+ } | null;
1636
+ createdAt: string;
1637
+ updatedAt: string;
1638
+ location: {
1639
+ placeName: string;
1640
+ lat: number;
1641
+ lng: number;
1642
+ locationId: string & z.BRAND<"LocationId">;
1643
+ address: string;
1644
+ } | null;
1645
+ participants: {
1646
+ memberId: number & z.BRAND<"MemberId">;
1647
+ username: string;
1648
+ profileImageUrl: string | null;
1649
+ }[];
1650
+ planId: number & z.BRAND<"PlanId">;
1651
+ meetingAt: string;
1652
+ }, {
1653
+ type: "RECRUIT" | "INVITATION";
1654
+ status: "PLANNING" | "COMPLETED";
1655
+ restaurant: {
1656
+ restaurantId: string;
1657
+ placeName: string;
1658
+ categoryName: string;
1659
+ categoryGroupName: string;
1660
+ roadAddressName: string;
1661
+ addressName: string;
1662
+ phone: string | null;
1663
+ placeUrl: string | null;
1664
+ lat: number;
1665
+ lng: number;
1666
+ distance?: string | undefined;
1667
+ } | null;
1668
+ author: {
1669
+ memberId: number;
1670
+ username: string;
1671
+ profileImageUrl: string | null;
1672
+ } | null;
1673
+ createdAt: string;
1674
+ updatedAt: string;
1675
+ location: {
1676
+ placeName: string;
1677
+ lat: number;
1678
+ lng: number;
1679
+ locationId: string;
1680
+ address: string;
1681
+ } | null;
1682
+ participants: {
1683
+ memberId: number;
1684
+ username: string;
1685
+ profileImageUrl: string | null;
1686
+ }[];
1687
+ planId: number;
1688
+ meetingAt: string;
1689
+ }>>;
1690
+ readonly create: EndpointContract<"POST", "/plans", z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
1691
+ meetingDate: z.ZodString;
1692
+ meetingTime: z.ZodString;
1693
+ }, "strip", z.ZodTypeAny, {
1694
+ meetingDate: string;
1695
+ meetingTime: string;
1696
+ }, {
1697
+ meetingDate: string;
1698
+ meetingTime: string;
1699
+ }>, z.ZodObject<{
1700
+ planId: z.ZodBranded<z.ZodNumber, "PlanId">;
1701
+ meetingAt: z.ZodString;
1702
+ location: z.ZodNullable<z.ZodObject<{
1703
+ locationId: z.ZodBranded<z.ZodString, "LocationId">;
1704
+ placeName: z.ZodString;
1705
+ lat: z.ZodNumber;
1706
+ lng: z.ZodNumber;
1707
+ address: z.ZodString;
1708
+ }, "strip", z.ZodTypeAny, {
1709
+ placeName: string;
1710
+ lat: number;
1711
+ lng: number;
1712
+ locationId: string & z.BRAND<"LocationId">;
1713
+ address: string;
1714
+ }, {
1715
+ placeName: string;
1716
+ lat: number;
1717
+ lng: number;
1718
+ locationId: string;
1719
+ address: string;
1720
+ }>>;
1721
+ restaurant: z.ZodNullable<z.ZodObject<{
1722
+ restaurantId: z.ZodBranded<z.ZodString, "RestaurantId">;
1723
+ placeName: z.ZodString;
1724
+ categoryName: z.ZodString;
1725
+ categoryGroupName: z.ZodString;
1726
+ distance: z.ZodOptional<z.ZodString>;
1727
+ roadAddressName: z.ZodString;
1728
+ addressName: z.ZodString;
1729
+ phone: z.ZodNullable<z.ZodString>;
1730
+ placeUrl: z.ZodNullable<z.ZodString>;
1731
+ lat: z.ZodNumber;
1732
+ lng: z.ZodNumber;
1733
+ }, "strip", z.ZodTypeAny, {
1734
+ restaurantId: string & z.BRAND<"RestaurantId">;
1735
+ placeName: string;
1736
+ categoryName: string;
1737
+ categoryGroupName: string;
1738
+ roadAddressName: string;
1739
+ addressName: string;
1740
+ phone: string | null;
1741
+ placeUrl: string | null;
1742
+ lat: number;
1743
+ lng: number;
1744
+ distance?: string | undefined;
1745
+ }, {
1746
+ restaurantId: string;
1747
+ placeName: string;
1748
+ categoryName: string;
1749
+ categoryGroupName: string;
1750
+ roadAddressName: string;
1751
+ addressName: string;
1752
+ phone: string | null;
1753
+ placeUrl: string | null;
1754
+ lat: number;
1755
+ lng: number;
1756
+ distance?: string | undefined;
1757
+ }>>;
1758
+ author: z.ZodNullable<z.ZodObject<Pick<{
1759
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
1760
+ username: z.ZodString;
1761
+ profileImageUrl: z.ZodNullable<z.ZodString>;
1762
+ }, "memberId" | "username" | "profileImageUrl">, "strip", z.ZodTypeAny, {
1763
+ memberId: number & z.BRAND<"MemberId">;
1764
+ username: string;
1765
+ profileImageUrl: string | null;
1766
+ }, {
1767
+ memberId: number;
1768
+ username: string;
1769
+ profileImageUrl: string | null;
1770
+ }>>;
1771
+ participants: z.ZodArray<z.ZodObject<Pick<{
1772
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
1773
+ username: z.ZodString;
1774
+ profileImageUrl: z.ZodNullable<z.ZodString>;
1775
+ }, "memberId" | "username" | "profileImageUrl">, "strip", z.ZodTypeAny, {
1776
+ memberId: number & z.BRAND<"MemberId">;
1777
+ username: string;
1778
+ profileImageUrl: string | null;
1779
+ }, {
1780
+ memberId: number;
1781
+ username: string;
1782
+ profileImageUrl: string | null;
1783
+ }>, "many">;
1784
+ status: z.ZodEnum<["PLANNING", "COMPLETED"]>;
1785
+ type: z.ZodEnum<["RECRUIT", "INVITATION"]>;
1786
+ createdAt: z.ZodString;
1787
+ updatedAt: z.ZodString;
1788
+ }, "strip", z.ZodTypeAny, {
1789
+ type: "RECRUIT" | "INVITATION";
1790
+ status: "PLANNING" | "COMPLETED";
1791
+ restaurant: {
1792
+ restaurantId: string & z.BRAND<"RestaurantId">;
1793
+ placeName: string;
1794
+ categoryName: string;
1795
+ categoryGroupName: string;
1796
+ roadAddressName: string;
1797
+ addressName: string;
1798
+ phone: string | null;
1799
+ placeUrl: string | null;
1800
+ lat: number;
1801
+ lng: number;
1802
+ distance?: string | undefined;
1803
+ } | null;
1804
+ author: {
1805
+ memberId: number & z.BRAND<"MemberId">;
1806
+ username: string;
1807
+ profileImageUrl: string | null;
1808
+ } | null;
1809
+ createdAt: string;
1810
+ updatedAt: string;
1811
+ location: {
1812
+ placeName: string;
1813
+ lat: number;
1814
+ lng: number;
1815
+ locationId: string & z.BRAND<"LocationId">;
1816
+ address: string;
1817
+ } | null;
1818
+ participants: {
1819
+ memberId: number & z.BRAND<"MemberId">;
1820
+ username: string;
1821
+ profileImageUrl: string | null;
1822
+ }[];
1823
+ planId: number & z.BRAND<"PlanId">;
1824
+ meetingAt: string;
1825
+ }, {
1826
+ type: "RECRUIT" | "INVITATION";
1827
+ status: "PLANNING" | "COMPLETED";
1828
+ restaurant: {
1829
+ restaurantId: string;
1830
+ placeName: string;
1831
+ categoryName: string;
1832
+ categoryGroupName: string;
1833
+ roadAddressName: string;
1834
+ addressName: string;
1835
+ phone: string | null;
1836
+ placeUrl: string | null;
1837
+ lat: number;
1838
+ lng: number;
1839
+ distance?: string | undefined;
1840
+ } | null;
1841
+ author: {
1842
+ memberId: number;
1843
+ username: string;
1844
+ profileImageUrl: string | null;
1845
+ } | null;
1846
+ createdAt: string;
1847
+ updatedAt: string;
1848
+ location: {
1849
+ placeName: string;
1850
+ lat: number;
1851
+ lng: number;
1852
+ locationId: string;
1853
+ address: string;
1854
+ } | null;
1855
+ participants: {
1856
+ memberId: number;
1857
+ username: string;
1858
+ profileImageUrl: string | null;
1859
+ }[];
1860
+ planId: number;
1861
+ meetingAt: string;
1862
+ }>>;
1863
+ };
1864
+ readonly mealStatus: {
1865
+ readonly get: EndpointContract<"GET", "/members/me/meal-status", z.ZodUndefined, z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
1866
+ status: z.ZodEnum<["FED", "FASTING"]>;
1867
+ lastMealAt: z.ZodNullable<z.ZodString>;
1868
+ fastingMinutes: z.ZodNumber;
1869
+ fastingHours: z.ZodNumber;
1870
+ secondsToAutoOff: z.ZodNumber;
1871
+ }, "strip", z.ZodTypeAny, {
1872
+ status: "FED" | "FASTING";
1873
+ lastMealAt: string | null;
1874
+ fastingMinutes: number;
1875
+ fastingHours: number;
1876
+ secondsToAutoOff: number;
1877
+ }, {
1878
+ status: "FED" | "FASTING";
1879
+ lastMealAt: string | null;
1880
+ fastingMinutes: number;
1881
+ fastingHours: number;
1882
+ secondsToAutoOff: number;
1883
+ }>>;
1884
+ readonly update: EndpointContract<"PATCH", "/members/me/meal-status", z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
1885
+ action: z.ZodEnum<["ATE_NOW", "SET_OFF"]>;
1886
+ }, "strip", z.ZodTypeAny, {
1887
+ action: "ATE_NOW" | "SET_OFF";
1888
+ }, {
1889
+ action: "ATE_NOW" | "SET_OFF";
1890
+ }>, z.ZodNull>;
1891
+ };
1892
+ readonly friends: {
1893
+ readonly list: EndpointContract<"GET", "/friends", z.ZodUndefined, z.ZodUndefined, z.ZodUndefined, z.ZodArray<z.ZodObject<Pick<{
1894
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
1895
+ username: z.ZodString;
1896
+ profileImageUrl: z.ZodNullable<z.ZodString>;
1897
+ }, "memberId" | "username" | "profileImageUrl"> & {
1898
+ friendSince: z.ZodString;
1899
+ }, "strip", z.ZodTypeAny, {
1900
+ memberId: number & z.BRAND<"MemberId">;
1901
+ username: string;
1902
+ profileImageUrl: string | null;
1903
+ friendSince: string;
1904
+ }, {
1905
+ memberId: number;
1906
+ username: string;
1907
+ profileImageUrl: string | null;
1908
+ friendSince: string;
1909
+ }>, "many">>;
1910
+ readonly meals: EndpointContract<"GET", "/friends/meals", z.ZodUndefined, z.ZodObject<{
1911
+ filter: z.ZodOptional<z.ZodEnum<["ALL", "HUNGRY", "NOT_HUNGRY"]>>;
1912
+ }, "strip", z.ZodTypeAny, {
1913
+ filter?: "ALL" | "HUNGRY" | "NOT_HUNGRY" | undefined;
1914
+ }, {
1915
+ filter?: "ALL" | "HUNGRY" | "NOT_HUNGRY" | undefined;
1916
+ }>, z.ZodUndefined, z.ZodArray<z.ZodObject<Pick<{
1917
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
1918
+ username: z.ZodString;
1919
+ profileImageUrl: z.ZodNullable<z.ZodString>;
1920
+ }, "memberId" | "username" | "profileImageUrl"> & {
1921
+ hungry: z.ZodBoolean;
1922
+ label: z.ZodString;
1923
+ }, "strip", z.ZodTypeAny, {
1924
+ memberId: number & z.BRAND<"MemberId">;
1925
+ username: string;
1926
+ profileImageUrl: string | null;
1927
+ label: string;
1928
+ hungry: boolean;
1929
+ }, {
1930
+ memberId: number;
1931
+ username: string;
1932
+ profileImageUrl: string | null;
1933
+ label: string;
1934
+ hungry: boolean;
1935
+ }>, "many">>;
1936
+ readonly blocks: EndpointContract<"GET", "/friends/blocks", z.ZodUndefined, z.ZodUndefined, z.ZodUndefined, z.ZodArray<z.ZodObject<Pick<{
1937
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
1938
+ username: z.ZodString;
1939
+ profileImageUrl: z.ZodNullable<z.ZodString>;
1940
+ }, "memberId" | "username" | "profileImageUrl"> & {
1941
+ blockedAt: z.ZodString;
1942
+ }, "strip", z.ZodTypeAny, {
1943
+ memberId: number & z.BRAND<"MemberId">;
1944
+ username: string;
1945
+ profileImageUrl: string | null;
1946
+ blockedAt: string;
1947
+ }, {
1948
+ memberId: number;
1949
+ username: string;
1950
+ profileImageUrl: string | null;
1951
+ blockedAt: string;
1952
+ }>, "many">>;
1953
+ readonly request: EndpointContract<"POST", "/friends/requests", z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
1954
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
1955
+ }, "strip", z.ZodTypeAny, {
1956
+ memberId: number & z.BRAND<"MemberId">;
1957
+ }, {
1958
+ memberId: number;
1959
+ }>, z.ZodObject<{
1960
+ requestId: z.ZodBranded<z.ZodNumber, "FriendRequestId">;
1961
+ requester: z.ZodObject<Pick<{
1962
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
1963
+ username: z.ZodString;
1964
+ profileImageUrl: z.ZodNullable<z.ZodString>;
1965
+ }, "memberId" | "username" | "profileImageUrl">, "strip", z.ZodTypeAny, {
1966
+ memberId: number & z.BRAND<"MemberId">;
1967
+ username: string;
1968
+ profileImageUrl: string | null;
1969
+ }, {
1970
+ memberId: number;
1971
+ username: string;
1972
+ profileImageUrl: string | null;
1973
+ }>;
1974
+ recipient: z.ZodObject<Pick<{
1975
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
1976
+ username: z.ZodString;
1977
+ profileImageUrl: z.ZodNullable<z.ZodString>;
1978
+ }, "memberId" | "username" | "profileImageUrl">, "strip", z.ZodTypeAny, {
1979
+ memberId: number & z.BRAND<"MemberId">;
1980
+ username: string;
1981
+ profileImageUrl: string | null;
1982
+ }, {
1983
+ memberId: number;
1984
+ username: string;
1985
+ profileImageUrl: string | null;
1986
+ }>;
1987
+ status: z.ZodEnum<["PENDING", "ACCEPTED", "REJECTED", "CANCELED"]>;
1988
+ requestedAt: z.ZodString;
1989
+ }, "strip", z.ZodTypeAny, {
1990
+ status: "PENDING" | "ACCEPTED" | "REJECTED" | "CANCELED";
1991
+ requestId: number & z.BRAND<"FriendRequestId">;
1992
+ requester: {
1993
+ memberId: number & z.BRAND<"MemberId">;
1994
+ username: string;
1995
+ profileImageUrl: string | null;
1996
+ };
1997
+ recipient: {
1998
+ memberId: number & z.BRAND<"MemberId">;
1999
+ username: string;
2000
+ profileImageUrl: string | null;
2001
+ };
2002
+ requestedAt: string;
2003
+ }, {
2004
+ status: "PENDING" | "ACCEPTED" | "REJECTED" | "CANCELED";
2005
+ requestId: number;
2006
+ requester: {
2007
+ memberId: number;
2008
+ username: string;
2009
+ profileImageUrl: string | null;
2010
+ };
2011
+ recipient: {
2012
+ memberId: number;
2013
+ username: string;
2014
+ profileImageUrl: string | null;
2015
+ };
2016
+ requestedAt: string;
2017
+ }>>;
2018
+ readonly acceptRequest: EndpointContract<"POST", "/friends/requests/:requestId/accept", z.ZodObject<{
2019
+ requestId: z.ZodBranded<z.ZodNumber, "FriendRequestId">;
2020
+ }, "strip", z.ZodTypeAny, {
2021
+ requestId: number & z.BRAND<"FriendRequestId">;
2022
+ }, {
2023
+ requestId: number;
2024
+ }>, z.ZodUndefined, z.ZodUndefined, z.ZodNull>;
2025
+ readonly rejectRequest: EndpointContract<"POST", "/friends/requests/:requestId/reject", z.ZodObject<{
2026
+ requestId: z.ZodBranded<z.ZodNumber, "FriendRequestId">;
2027
+ }, "strip", z.ZodTypeAny, {
2028
+ requestId: number & z.BRAND<"FriendRequestId">;
2029
+ }, {
2030
+ requestId: number;
2031
+ }>, z.ZodUndefined, z.ZodUndefined, z.ZodNull>;
2032
+ readonly block: EndpointContract<"POST", "/friends/blocks", z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
2033
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
2034
+ }, "strip", z.ZodTypeAny, {
2035
+ memberId: number & z.BRAND<"MemberId">;
2036
+ }, {
2037
+ memberId: number;
2038
+ }>, z.ZodNull>;
2039
+ readonly unblock: EndpointContract<"DELETE", "/friends/blocks/:memberId", z.ZodObject<{
2040
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
2041
+ }, "strip", z.ZodTypeAny, {
2042
+ memberId: number & z.BRAND<"MemberId">;
2043
+ }, {
2044
+ memberId: number;
2045
+ }>, z.ZodUndefined, z.ZodUndefined, z.ZodNull>;
2046
+ };
2047
+ readonly preferences: {
2048
+ readonly list: EndpointContract<"GET", "/preferences", z.ZodUndefined, z.ZodUndefined, z.ZodUndefined, z.ZodArray<z.ZodObject<{
2049
+ id: z.ZodNumber;
2050
+ memberId: z.ZodBranded<z.ZodNumber, "MemberId">;
2051
+ foodCode: z.ZodString;
2052
+ type: z.ZodEnum<["LIKE", "DISLIKE", "ALLERGY"]>;
2053
+ createdAt: z.ZodString;
2054
+ updatedAt: z.ZodString;
2055
+ }, "strip", z.ZodTypeAny, {
2056
+ type: "LIKE" | "DISLIKE" | "ALLERGY";
2057
+ memberId: number & z.BRAND<"MemberId">;
2058
+ id: number;
2059
+ createdAt: string;
2060
+ updatedAt: string;
2061
+ foodCode: string;
2062
+ }, {
2063
+ type: "LIKE" | "DISLIKE" | "ALLERGY";
2064
+ memberId: number;
2065
+ id: number;
2066
+ createdAt: string;
2067
+ updatedAt: string;
2068
+ foodCode: string;
2069
+ }>, "many">>;
2070
+ };
2071
+ readonly coupons: {
2072
+ readonly list: EndpointContract<"GET", "/coupons", z.ZodUndefined, z.ZodUndefined, z.ZodUndefined, z.ZodArray<z.ZodObject<{
2073
+ couponId: z.ZodBranded<z.ZodNumber, "CouponId">;
2074
+ title: z.ZodString;
2075
+ shopName: z.ZodString;
2076
+ type: z.ZodEnum<["DISCOUNT", "SERVICE"]>;
2077
+ condition: z.ZodString;
2078
+ expiresAt: z.ZodString;
2079
+ used: z.ZodBoolean;
2080
+ thumbnailUrl: z.ZodString;
2081
+ }, "strip", z.ZodTypeAny, {
2082
+ type: "DISCOUNT" | "SERVICE";
2083
+ expiresAt: string;
2084
+ couponId: number & z.BRAND<"CouponId">;
2085
+ title: string;
2086
+ shopName: string;
2087
+ condition: string;
2088
+ used: boolean;
2089
+ thumbnailUrl: string;
2090
+ }, {
2091
+ type: "DISCOUNT" | "SERVICE";
2092
+ expiresAt: string;
2093
+ couponId: number;
2094
+ title: string;
2095
+ shopName: string;
2096
+ condition: string;
2097
+ used: boolean;
2098
+ thumbnailUrl: string;
2099
+ }>, "many">>;
2100
+ readonly use: EndpointContract<"PATCH", "/coupons/:couponId/use", z.ZodObject<{
2101
+ couponId: z.ZodBranded<z.ZodNumber, "CouponId">;
2102
+ }, "strip", z.ZodTypeAny, {
2103
+ couponId: number & z.BRAND<"CouponId">;
2104
+ }, {
2105
+ couponId: number;
2106
+ }>, z.ZodUndefined, z.ZodUndefined, z.ZodNull>;
2107
+ };
2108
+ readonly challenges: {
2109
+ readonly status: EndpointContract<"GET", "/challenges/status", z.ZodUndefined, z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
2110
+ week: z.ZodObject<{
2111
+ days: z.ZodArray<z.ZodBoolean, "many">;
2112
+ completed: z.ZodNumber;
2113
+ goal: z.ZodNumber;
2114
+ }, "strip", z.ZodTypeAny, {
2115
+ days: boolean[];
2116
+ completed: number;
2117
+ goal: number;
2118
+ }, {
2119
+ days: boolean[];
2120
+ completed: number;
2121
+ goal: number;
2122
+ }>;
2123
+ month: z.ZodObject<{
2124
+ count: z.ZodNumber;
2125
+ goal: z.ZodNumber;
2126
+ }, "strip", z.ZodTypeAny, {
2127
+ goal: number;
2128
+ count: number;
2129
+ }, {
2130
+ goal: number;
2131
+ count: number;
2132
+ }>;
2133
+ weekRewardAvailable: z.ZodBoolean;
2134
+ monthRewardAvailable: z.ZodBoolean;
2135
+ }, "strip", z.ZodTypeAny, {
2136
+ week: {
2137
+ days: boolean[];
2138
+ completed: number;
2139
+ goal: number;
2140
+ };
2141
+ month: {
2142
+ goal: number;
2143
+ count: number;
2144
+ };
2145
+ weekRewardAvailable: boolean;
2146
+ monthRewardAvailable: boolean;
2147
+ }, {
2148
+ week: {
2149
+ days: boolean[];
2150
+ completed: number;
2151
+ goal: number;
2152
+ };
2153
+ month: {
2154
+ goal: number;
2155
+ count: number;
2156
+ };
2157
+ weekRewardAvailable: boolean;
2158
+ monthRewardAvailable: boolean;
2159
+ }>>;
2160
+ readonly claimReward: EndpointContract<"POST", "/challenges/rewards", z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
2161
+ type: z.ZodEnum<["WEEK", "MONTH"]>;
2162
+ }, "strip", z.ZodTypeAny, {
2163
+ type: "WEEK" | "MONTH";
2164
+ }, {
2165
+ type: "WEEK" | "MONTH";
2166
+ }>, z.ZodObject<{
2167
+ rewardType: z.ZodEnum<["WEEK", "MONTH"]>;
2168
+ claimed: z.ZodBoolean;
2169
+ }, "strip", z.ZodTypeAny, {
2170
+ rewardType: "WEEK" | "MONTH";
2171
+ claimed: boolean;
2172
+ }, {
2173
+ rewardType: "WEEK" | "MONTH";
2174
+ claimed: boolean;
2175
+ }>>;
2176
+ };
2177
+ readonly referrals: {
2178
+ readonly create: EndpointContract<"POST", "/referrals", z.ZodUndefined, z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
2179
+ code: z.ZodBranded<z.ZodString, "ReferralCode">;
2180
+ link: z.ZodString;
2181
+ expiresAt: z.ZodString;
2182
+ }, "strip", z.ZodTypeAny, {
2183
+ code: string & z.BRAND<"ReferralCode">;
2184
+ expiresAt: string;
2185
+ link: string;
2186
+ }, {
2187
+ code: string;
2188
+ expiresAt: string;
2189
+ link: string;
2190
+ }>>;
2191
+ readonly list: EndpointContract<"GET", "/referrals", z.ZodUndefined, z.ZodUndefined, z.ZodUndefined, z.ZodArray<z.ZodObject<{
2192
+ code: z.ZodBranded<z.ZodString, "ReferralCode">;
2193
+ createdAt: z.ZodString;
2194
+ expiresAt: z.ZodString;
2195
+ used: z.ZodBoolean;
2196
+ usedByMemberId: z.ZodNullable<z.ZodBranded<z.ZodNumber, "MemberId">>;
2197
+ usedByUsername: z.ZodNullable<z.ZodString>;
2198
+ }, "strip", z.ZodTypeAny, {
2199
+ code: string & z.BRAND<"ReferralCode">;
2200
+ createdAt: string;
2201
+ expiresAt: string;
2202
+ used: boolean;
2203
+ usedByMemberId: (number & z.BRAND<"MemberId">) | null;
2204
+ usedByUsername: string | null;
2205
+ }, {
2206
+ code: string;
2207
+ createdAt: string;
2208
+ expiresAt: string;
2209
+ used: boolean;
2210
+ usedByMemberId: number | null;
2211
+ usedByUsername: string | null;
2212
+ }>, "many">>;
2213
+ readonly redeem: EndpointContract<"POST", "/referrals/redeem", z.ZodUndefined, z.ZodUndefined, z.ZodObject<{
2214
+ code: z.ZodBranded<z.ZodString, "ReferralCode">;
2215
+ }, "strip", z.ZodTypeAny, {
2216
+ code: string & z.BRAND<"ReferralCode">;
2217
+ }, {
2218
+ code: string;
2219
+ }>, z.ZodNull>;
2220
+ };
2221
+ };
2222
+ type ApiContract = typeof apiContract;
2223
+ type ApiDomain = keyof ApiContract;
2224
+
2225
+ declare const ISODateStringSchema: z.ZodString;
2226
+ declare const ISODateTimeStringSchema: z.ZodString;
2227
+ declare const TimeHHmmStringSchema: z.ZodString;
2228
+
2229
+ type ISODateString = z.infer<typeof ISODateStringSchema>;
2230
+ type ISODateTimeString = z.infer<typeof ISODateTimeStringSchema>;
2231
+ type TimeHHmmString = z.infer<typeof TimeHHmmStringSchema>;
2232
+
2233
+ type EntityContract<TEntityName extends string, TId, TShape extends object> = TShape & {
2234
+ readonly __entityName?: TEntityName;
2235
+ readonly id?: TId;
2236
+ };
2237
+
2238
+ declare const NoContentSchema: z.ZodNull;
2239
+ declare const ApiSuccessSchema: <TData extends z.ZodTypeAny>(data: TData) => z.ZodObject<{
2240
+ success: z.ZodLiteral<true>;
2241
+ code: z.ZodNumber;
2242
+ message: z.ZodString;
2243
+ data: TData;
2244
+ }, "strip", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
2245
+ success: z.ZodLiteral<true>;
2246
+ code: z.ZodNumber;
2247
+ message: z.ZodString;
2248
+ data: TData;
2249
+ }>, any> extends infer T ? { [k in keyof T]: T[k]; } : never, z.baseObjectInputType<{
2250
+ success: z.ZodLiteral<true>;
2251
+ code: z.ZodNumber;
2252
+ message: z.ZodString;
2253
+ data: TData;
2254
+ }> extends infer T_1 ? { [k_1 in keyof T_1]: T_1[k_1]; } : never>;
2255
+ declare const ApiFailureSchema: z.ZodObject<{
2256
+ success: z.ZodLiteral<false>;
2257
+ status: z.ZodNumber;
2258
+ code: z.ZodString;
2259
+ message: z.ZodString;
2260
+ }, "strip", z.ZodTypeAny, {
2261
+ message: string;
2262
+ code: string;
2263
+ status: number;
2264
+ success: false;
2265
+ }, {
2266
+ message: string;
2267
+ code: string;
2268
+ status: number;
2269
+ success: false;
2270
+ }>;
2271
+ declare const ApiResponseSchema: <TData extends z.ZodTypeAny>(data: TData) => z.ZodUnion<[z.ZodObject<{
2272
+ success: z.ZodLiteral<true>;
2273
+ code: z.ZodNumber;
2274
+ message: z.ZodString;
2275
+ data: TData;
2276
+ }, "strip", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
2277
+ success: z.ZodLiteral<true>;
2278
+ code: z.ZodNumber;
2279
+ message: z.ZodString;
2280
+ data: TData;
2281
+ }>, any> extends infer T ? { [k in keyof T]: T[k]; } : never, z.baseObjectInputType<{
2282
+ success: z.ZodLiteral<true>;
2283
+ code: z.ZodNumber;
2284
+ message: z.ZodString;
2285
+ data: TData;
2286
+ }> extends infer T_1 ? { [k_1 in keyof T_1]: T_1[k_1]; } : never>, z.ZodObject<{
2287
+ success: z.ZodLiteral<false>;
2288
+ status: z.ZodNumber;
2289
+ code: z.ZodString;
2290
+ message: z.ZodString;
2291
+ }, "strip", z.ZodTypeAny, {
2292
+ message: string;
2293
+ code: string;
2294
+ status: number;
2295
+ success: false;
2296
+ }, {
2297
+ message: string;
2298
+ code: string;
2299
+ status: number;
2300
+ success: false;
2301
+ }>]>;
2302
+ declare const CreatedIdResponseSchema: z.ZodObject<{
2303
+ id: z.ZodNumber;
2304
+ }, "strip", z.ZodTypeAny, {
2305
+ id: number;
2306
+ }, {
2307
+ id: number;
2308
+ }>;
2309
+ declare const CreatedEntityIdResponseSchema: z.ZodObject<{
2310
+ entity: z.ZodEnum<["article", "comment", "recruit", "invitation", "subscription", "coupon", "plan"]>;
2311
+ id: z.ZodNumber;
2312
+ }, "strip", z.ZodTypeAny, {
2313
+ id: number;
2314
+ entity: "article" | "comment" | "recruit" | "invitation" | "subscription" | "coupon" | "plan";
2315
+ }, {
2316
+ id: number;
2317
+ entity: "article" | "comment" | "recruit" | "invitation" | "subscription" | "coupon" | "plan";
2318
+ }>;
2319
+
2320
+ type NoContent = z.infer<typeof NoContentSchema>;
2321
+ type ApiSuccess<T> = z.infer<ReturnType<typeof ApiSuccessSchema<z.ZodType<T>>>>;
2322
+ type ApiFailure = z.infer<typeof ApiFailureSchema>;
2323
+ type ApiResponse<T> = ApiSuccess<T> | ApiFailure;
2324
+ type CreatedIdResponse = z.infer<typeof CreatedIdResponseSchema>;
2325
+ type CreatedEntityIdResponse = z.infer<typeof CreatedEntityIdResponseSchema>;
2326
+ /** @deprecated Use ApiSuccess<T>. */
2327
+ interface BaseResponse<T> {
2328
+ code: number;
2329
+ message: string;
2330
+ data: T;
2331
+ }
2332
+ declare const makeApiResponseSchema: <TData extends z.ZodTypeAny>(data: TData) => z.ZodUnion<[z.ZodObject<{
2333
+ success: z.ZodLiteral<true>;
2334
+ code: z.ZodNumber;
2335
+ message: z.ZodString;
2336
+ data: TData;
2337
+ }, "strip", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
2338
+ success: z.ZodLiteral<true>;
2339
+ code: z.ZodNumber;
2340
+ message: z.ZodString;
2341
+ data: TData;
2342
+ }>, any> extends infer T ? { [k in keyof T]: T[k]; } : never, z.baseObjectInputType<{
2343
+ success: z.ZodLiteral<true>;
2344
+ code: z.ZodNumber;
2345
+ message: z.ZodString;
2346
+ data: TData;
2347
+ }> extends infer T_1 ? { [k_1 in keyof T_1]: T_1[k_1]; } : never>, z.ZodObject<{
2348
+ success: z.ZodLiteral<false>;
2349
+ status: z.ZodNumber;
2350
+ code: z.ZodString;
2351
+ message: z.ZodString;
2352
+ }, "strip", z.ZodTypeAny, {
2353
+ message: string;
2354
+ code: string;
2355
+ status: number;
2356
+ success: false;
2357
+ }, {
2358
+ message: string;
2359
+ code: string;
2360
+ status: number;
2361
+ success: false;
2362
+ }>]>;
2363
+ declare const makeApiSuccessSchema: <TData extends z.ZodTypeAny>(data: TData) => z.ZodObject<{
2364
+ success: z.ZodLiteral<true>;
2365
+ code: z.ZodNumber;
2366
+ message: z.ZodString;
2367
+ data: TData;
2368
+ }, "strip", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
2369
+ success: z.ZodLiteral<true>;
2370
+ code: z.ZodNumber;
2371
+ message: z.ZodString;
2372
+ data: TData;
2373
+ }>, any> extends infer T ? { [k in keyof T]: T[k]; } : never, z.baseObjectInputType<{
2374
+ success: z.ZodLiteral<true>;
2375
+ code: z.ZodNumber;
2376
+ message: z.ZodString;
2377
+ data: TData;
2378
+ }> extends infer T_1 ? { [k_1 in keyof T_1]: T_1[k_1]; } : never>;
2379
+
2380
+ type MapperContract<TSource, TTarget> = (source: TSource) => TTarget;
2381
+ type AsyncMapperContract<TSource, TTarget> = (source: TSource) => Promise<TTarget>;
2382
+ type MapperInput<TMapper> = TMapper extends (source: infer TSource) => unknown ? TSource : never;
2383
+ type MapperOutput<TMapper> = TMapper extends (...args: never[]) => infer TTarget ? TTarget : never;
2384
+
2385
+ declare const PageRequestSchema: z.ZodObject<{
2386
+ page: z.ZodDefault<z.ZodNumber>;
2387
+ size: z.ZodDefault<z.ZodNumber>;
2388
+ }, "strip", z.ZodTypeAny, {
2389
+ page: number;
2390
+ size: number;
2391
+ }, {
2392
+ page?: number | undefined;
2393
+ size?: number | undefined;
2394
+ }>;
2395
+ declare const SortObjectSchema: z.ZodObject<{
2396
+ empty: z.ZodBoolean;
2397
+ sorted: z.ZodBoolean;
2398
+ unsorted: z.ZodBoolean;
2399
+ }, "strip", z.ZodTypeAny, {
2400
+ empty: boolean;
2401
+ sorted: boolean;
2402
+ unsorted: boolean;
2403
+ }, {
2404
+ empty: boolean;
2405
+ sorted: boolean;
2406
+ unsorted: boolean;
2407
+ }>;
2408
+ declare const PageableObjectSchema: z.ZodObject<{
2409
+ offset: z.ZodNumber;
2410
+ sort: z.ZodObject<{
2411
+ empty: z.ZodBoolean;
2412
+ sorted: z.ZodBoolean;
2413
+ unsorted: z.ZodBoolean;
2414
+ }, "strip", z.ZodTypeAny, {
2415
+ empty: boolean;
2416
+ sorted: boolean;
2417
+ unsorted: boolean;
2418
+ }, {
2419
+ empty: boolean;
2420
+ sorted: boolean;
2421
+ unsorted: boolean;
2422
+ }>;
2423
+ paged: z.ZodBoolean;
2424
+ pageNumber: z.ZodNumber;
2425
+ pageSize: z.ZodNumber;
2426
+ unpaged: z.ZodBoolean;
2427
+ }, "strip", z.ZodTypeAny, {
2428
+ offset: number;
2429
+ sort: {
2430
+ empty: boolean;
2431
+ sorted: boolean;
2432
+ unsorted: boolean;
2433
+ };
2434
+ paged: boolean;
2435
+ pageNumber: number;
2436
+ pageSize: number;
2437
+ unpaged: boolean;
2438
+ }, {
2439
+ offset: number;
2440
+ sort: {
2441
+ empty: boolean;
2442
+ sorted: boolean;
2443
+ unsorted: boolean;
2444
+ };
2445
+ paged: boolean;
2446
+ pageNumber: number;
2447
+ pageSize: number;
2448
+ unpaged: boolean;
2449
+ }>;
2450
+ declare const PageResponseSchema: <TItem extends z.ZodTypeAny>(item: TItem) => z.ZodObject<{
2451
+ totalElements: z.ZodNumber;
2452
+ totalPages: z.ZodNumber;
2453
+ first: z.ZodBoolean;
2454
+ size: z.ZodNumber;
2455
+ content: z.ZodArray<TItem, "many">;
2456
+ number: z.ZodNumber;
2457
+ sort: z.ZodObject<{
2458
+ empty: z.ZodBoolean;
2459
+ sorted: z.ZodBoolean;
2460
+ unsorted: z.ZodBoolean;
2461
+ }, "strip", z.ZodTypeAny, {
2462
+ empty: boolean;
2463
+ sorted: boolean;
2464
+ unsorted: boolean;
2465
+ }, {
2466
+ empty: boolean;
2467
+ sorted: boolean;
2468
+ unsorted: boolean;
2469
+ }>;
2470
+ numberOfElements: z.ZodNumber;
2471
+ pageable: z.ZodObject<{
2472
+ offset: z.ZodNumber;
2473
+ sort: z.ZodObject<{
2474
+ empty: z.ZodBoolean;
2475
+ sorted: z.ZodBoolean;
2476
+ unsorted: z.ZodBoolean;
2477
+ }, "strip", z.ZodTypeAny, {
2478
+ empty: boolean;
2479
+ sorted: boolean;
2480
+ unsorted: boolean;
2481
+ }, {
2482
+ empty: boolean;
2483
+ sorted: boolean;
2484
+ unsorted: boolean;
2485
+ }>;
2486
+ paged: z.ZodBoolean;
2487
+ pageNumber: z.ZodNumber;
2488
+ pageSize: z.ZodNumber;
2489
+ unpaged: z.ZodBoolean;
2490
+ }, "strip", z.ZodTypeAny, {
2491
+ offset: number;
2492
+ sort: {
2493
+ empty: boolean;
2494
+ sorted: boolean;
2495
+ unsorted: boolean;
2496
+ };
2497
+ paged: boolean;
2498
+ pageNumber: number;
2499
+ pageSize: number;
2500
+ unpaged: boolean;
2501
+ }, {
2502
+ offset: number;
2503
+ sort: {
2504
+ empty: boolean;
2505
+ sorted: boolean;
2506
+ unsorted: boolean;
2507
+ };
2508
+ paged: boolean;
2509
+ pageNumber: number;
2510
+ pageSize: number;
2511
+ unpaged: boolean;
2512
+ }>;
2513
+ last: z.ZodBoolean;
2514
+ empty: z.ZodBoolean;
2515
+ }, "strip", z.ZodTypeAny, {
2516
+ number: number;
2517
+ size: number;
2518
+ sort: {
2519
+ empty: boolean;
2520
+ sorted: boolean;
2521
+ unsorted: boolean;
2522
+ };
2523
+ empty: boolean;
2524
+ totalElements: number;
2525
+ totalPages: number;
2526
+ first: boolean;
2527
+ content: TItem["_output"][];
2528
+ numberOfElements: number;
2529
+ pageable: {
2530
+ offset: number;
2531
+ sort: {
2532
+ empty: boolean;
2533
+ sorted: boolean;
2534
+ unsorted: boolean;
2535
+ };
2536
+ paged: boolean;
2537
+ pageNumber: number;
2538
+ pageSize: number;
2539
+ unpaged: boolean;
2540
+ };
2541
+ last: boolean;
2542
+ }, {
2543
+ number: number;
2544
+ size: number;
2545
+ sort: {
2546
+ empty: boolean;
2547
+ sorted: boolean;
2548
+ unsorted: boolean;
2549
+ };
2550
+ empty: boolean;
2551
+ totalElements: number;
2552
+ totalPages: number;
2553
+ first: boolean;
2554
+ content: TItem["_input"][];
2555
+ numberOfElements: number;
2556
+ pageable: {
2557
+ offset: number;
2558
+ sort: {
2559
+ empty: boolean;
2560
+ sorted: boolean;
2561
+ unsorted: boolean;
2562
+ };
2563
+ paged: boolean;
2564
+ pageNumber: number;
2565
+ pageSize: number;
2566
+ unpaged: boolean;
2567
+ };
2568
+ last: boolean;
2569
+ }>;
2570
+
2571
+ type PageRequest = z.infer<typeof PageRequestSchema>;
2572
+ type SortObject = z.infer<typeof SortObjectSchema>;
2573
+ type PageableObject = z.infer<typeof PageableObjectSchema>;
2574
+ type PageResponse<T> = z.infer<ReturnType<typeof PageResponseSchema<z.ZodType<T>>>>;
2575
+
2576
+ export { type ApiContract, type ApiDomain, type ApiFailure, ApiFailureSchema, type ApiResponse, ApiResponseSchema, type ApiSuccess, ApiSuccessSchema, type AsyncMapperContract, type BaseResponse, type BodyOf, type CreatedEntityIdResponse, CreatedEntityIdResponseSchema, type CreatedIdResponse, CreatedIdResponseSchema, type EndpointContract, type EntityContract, type HttpMethod, type ISODateString, ISODateStringSchema, type ISODateTimeString, ISODateTimeStringSchema, type MapperContract, type MapperInput, type MapperOutput, NoBodySchema, type NoContent, NoContentSchema, NoParamsSchema, NoQuerySchema, type PageRequest, PageRequestSchema, type PageResponse, PageResponseSchema, type PageableObject, PageableObjectSchema, type PathParamsOf, type QueryOf, type ResponseOf, type SortObject, SortObjectSchema, type TimeHHmmString, TimeHHmmStringSchema, apiContract, endpoint, makeApiResponseSchema, makeApiSuccessSchema };