@intlayer/backend-contract 0.0.0-stage → 9.7.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 (252) hide show
  1. package/dist/cjs/ai.cjs +267 -0
  2. package/dist/cjs/ai.cjs.map +1 -0
  3. package/dist/cjs/analytics.cjs +175 -0
  4. package/dist/cjs/analytics.cjs.map +1 -0
  5. package/dist/cjs/asset.cjs +88 -0
  6. package/dist/cjs/asset.cjs.map +1 -0
  7. package/dist/cjs/blogComment.cjs +98 -0
  8. package/dist/cjs/blogComment.cjs.map +1 -0
  9. package/dist/cjs/cliSessionToken.cjs +40 -0
  10. package/dist/cjs/cliSessionToken.cjs.map +1 -0
  11. package/dist/cjs/common.cjs +42 -0
  12. package/dist/cjs/common.cjs.map +1 -0
  13. package/dist/cjs/defineRoute.cjs +26 -0
  14. package/dist/cjs/defineRoute.cjs.map +1 -0
  15. package/dist/cjs/demo.cjs +22 -0
  16. package/dist/cjs/demo.cjs.map +1 -0
  17. package/dist/cjs/dictionary.cjs +168 -0
  18. package/dist/cjs/dictionary.cjs.map +1 -0
  19. package/dist/cjs/environment.cjs +91 -0
  20. package/dist/cjs/environment.cjs.map +1 -0
  21. package/dist/cjs/eventListener.cjs +19 -0
  22. package/dist/cjs/eventListener.cjs.map +1 -0
  23. package/dist/cjs/gitProviders.cjs +361 -0
  24. package/dist/cjs/gitProviders.cjs.map +1 -0
  25. package/dist/cjs/newsletter.cjs +50 -0
  26. package/dist/cjs/newsletter.cjs.map +1 -0
  27. package/dist/cjs/oAuth2.cjs +62 -0
  28. package/dist/cjs/oAuth2.cjs.map +1 -0
  29. package/dist/cjs/organization.cjs +226 -0
  30. package/dist/cjs/organization.cjs.map +1 -0
  31. package/dist/cjs/project.cjs +401 -0
  32. package/dist/cjs/project.cjs.map +1 -0
  33. package/dist/cjs/public.cjs +60 -0
  34. package/dist/cjs/public.cjs.map +1 -0
  35. package/dist/cjs/responseData.cjs +33 -0
  36. package/dist/cjs/responseData.cjs.map +1 -0
  37. package/dist/cjs/reviewer.cjs +401 -0
  38. package/dist/cjs/reviewer.cjs.map +1 -0
  39. package/dist/cjs/scan.cjs +235 -0
  40. package/dist/cjs/scan.cjs.map +1 -0
  41. package/dist/cjs/search.cjs +40 -0
  42. package/dist/cjs/search.cjs.map +1 -0
  43. package/dist/cjs/session.cjs +56 -0
  44. package/dist/cjs/session.cjs.map +1 -0
  45. package/dist/cjs/showcaseProject.cjs +185 -0
  46. package/dist/cjs/showcaseProject.cjs.map +1 -0
  47. package/dist/cjs/stripe.cjs +388 -0
  48. package/dist/cjs/stripe.cjs.map +1 -0
  49. package/dist/cjs/tag.cjs +83 -0
  50. package/dist/cjs/tag.cjs.map +1 -0
  51. package/dist/cjs/translation.cjs +54 -0
  52. package/dist/cjs/translation.cjs.map +1 -0
  53. package/dist/cjs/user.cjs +153 -0
  54. package/dist/cjs/user.cjs.map +1 -0
  55. package/dist/esm/ai.mjs +261 -0
  56. package/dist/esm/ai.mjs.map +1 -0
  57. package/dist/esm/analytics.mjs +168 -0
  58. package/dist/esm/analytics.mjs.map +1 -0
  59. package/dist/esm/asset.mjs +86 -0
  60. package/dist/esm/asset.mjs.map +1 -0
  61. package/dist/esm/blogComment.mjs +94 -0
  62. package/dist/esm/blogComment.mjs.map +1 -0
  63. package/dist/esm/cliSessionToken.mjs +39 -0
  64. package/dist/esm/cliSessionToken.mjs.map +1 -0
  65. package/dist/esm/common.mjs +35 -0
  66. package/dist/esm/common.mjs.map +1 -0
  67. package/dist/esm/defineRoute.mjs +23 -0
  68. package/dist/esm/defineRoute.mjs.map +1 -0
  69. package/dist/esm/demo.mjs +21 -0
  70. package/dist/esm/demo.mjs.map +1 -0
  71. package/dist/esm/dictionary.mjs +163 -0
  72. package/dist/esm/dictionary.mjs.map +1 -0
  73. package/dist/esm/environment.mjs +90 -0
  74. package/dist/esm/environment.mjs.map +1 -0
  75. package/dist/esm/eventListener.mjs +18 -0
  76. package/dist/esm/eventListener.mjs.map +1 -0
  77. package/dist/esm/gitProviders.mjs +352 -0
  78. package/dist/esm/gitProviders.mjs.map +1 -0
  79. package/dist/esm/newsletter.mjs +49 -0
  80. package/dist/esm/newsletter.mjs.map +1 -0
  81. package/dist/esm/oAuth2.mjs +60 -0
  82. package/dist/esm/oAuth2.mjs.map +1 -0
  83. package/dist/esm/organization.mjs +219 -0
  84. package/dist/esm/organization.mjs.map +1 -0
  85. package/dist/esm/project.mjs +387 -0
  86. package/dist/esm/project.mjs.map +1 -0
  87. package/dist/esm/public.mjs +58 -0
  88. package/dist/esm/public.mjs.map +1 -0
  89. package/dist/esm/responseData.mjs +30 -0
  90. package/dist/esm/responseData.mjs.map +1 -0
  91. package/dist/esm/reviewer.mjs +390 -0
  92. package/dist/esm/reviewer.mjs.map +1 -0
  93. package/dist/esm/scan.mjs +225 -0
  94. package/dist/esm/scan.mjs.map +1 -0
  95. package/dist/esm/search.mjs +38 -0
  96. package/dist/esm/search.mjs.map +1 -0
  97. package/dist/esm/session.mjs +53 -0
  98. package/dist/esm/session.mjs.map +1 -0
  99. package/dist/esm/showcaseProject.mjs +182 -0
  100. package/dist/esm/showcaseProject.mjs.map +1 -0
  101. package/dist/esm/stripe.mjs +379 -0
  102. package/dist/esm/stripe.mjs.map +1 -0
  103. package/dist/esm/tag.mjs +81 -0
  104. package/dist/esm/tag.mjs.map +1 -0
  105. package/dist/esm/translation.mjs +53 -0
  106. package/dist/esm/translation.mjs.map +1 -0
  107. package/dist/esm/user.mjs +149 -0
  108. package/dist/esm/user.mjs.map +1 -0
  109. package/dist/types/@intlayer/config/dist/types/defaultValues/dictionary.d.ts +1 -0
  110. package/dist/types/@intlayer/config/dist/types/defaultValues/index.d.ts +3 -0
  111. package/dist/types/@intlayer/config/dist/types/defaultValues/internationalization.d.ts +2 -0
  112. package/dist/types/@intlayer/config/dist/types/defaultValues/routing.d.ts +1 -0
  113. package/dist/types/@intlayer/core/dist/types/dictionaryManipulator/plainDynamicLoader.d.ts +2 -0
  114. package/dist/types/@intlayer/core/dist/types/dictionaryManipulator/qualifiedDynamicLoader.d.ts +2 -0
  115. package/dist/types/@intlayer/core/dist/types/formatters/compact.d.ts +1 -0
  116. package/dist/types/@intlayer/core/dist/types/formatters/currency.d.ts +1 -0
  117. package/dist/types/@intlayer/core/dist/types/formatters/date.d.ts +1 -0
  118. package/dist/types/@intlayer/core/dist/types/formatters/index.d.ts +9 -0
  119. package/dist/types/@intlayer/core/dist/types/formatters/list.d.ts +1 -0
  120. package/dist/types/@intlayer/core/dist/types/formatters/number.d.ts +1 -0
  121. package/dist/types/@intlayer/core/dist/types/formatters/percentage.d.ts +1 -0
  122. package/dist/types/@intlayer/core/dist/types/formatters/relativeTime.d.ts +1 -0
  123. package/dist/types/@intlayer/core/dist/types/formatters/units.d.ts +1 -0
  124. package/dist/types/@intlayer/core/dist/types/interpreter/dictionaryTransformCache.d.ts +4 -0
  125. package/dist/types/@intlayer/core/dist/types/interpreter/getCondition.d.ts +2 -0
  126. package/dist/types/@intlayer/core/dist/types/interpreter/getContent/deepTransform.d.ts +1 -0
  127. package/dist/types/@intlayer/core/dist/types/interpreter/getContent/getContent.d.ts +3 -0
  128. package/dist/types/@intlayer/core/dist/types/interpreter/getContent/index.d.ts +3 -0
  129. package/dist/types/@intlayer/core/dist/types/interpreter/getContent/plugins.d.ts +7 -0
  130. package/dist/types/@intlayer/core/dist/types/interpreter/getDictionary.d.ts +4 -0
  131. package/dist/types/@intlayer/core/dist/types/interpreter/getDictionaryAsync.d.ts +6 -0
  132. package/dist/types/@intlayer/core/dist/types/interpreter/getEnumeration.d.ts +2 -0
  133. package/dist/types/@intlayer/core/dist/types/interpreter/getGender.d.ts +2 -0
  134. package/dist/types/@intlayer/core/dist/types/interpreter/getInsertion.d.ts +2 -0
  135. package/dist/types/@intlayer/core/dist/types/interpreter/getIntlayer.d.ts +4 -0
  136. package/dist/types/@intlayer/core/dist/types/interpreter/getIntlayerAsync.d.ts +4 -0
  137. package/dist/types/@intlayer/core/dist/types/interpreter/getNesting.d.ts +6 -0
  138. package/dist/types/@intlayer/core/dist/types/interpreter/getPlural.d.ts +3 -0
  139. package/dist/types/@intlayer/core/dist/types/interpreter/getSelect.d.ts +2 -0
  140. package/dist/types/@intlayer/core/dist/types/interpreter/getTranslation.d.ts +1 -0
  141. package/dist/types/@intlayer/core/dist/types/interpreter/index.d.ts +19 -0
  142. package/dist/types/@intlayer/core/dist/types/interpreter/interpolableNode.d.ts +2 -0
  143. package/dist/types/@intlayer/core/dist/types/interpreter/resolveInterpreterLocale.d.ts +1 -0
  144. package/dist/types/@intlayer/core/dist/types/localization/comparePaths.d.ts +1 -0
  145. package/dist/types/@intlayer/core/dist/types/localization/domainUtils.d.ts +2 -0
  146. package/dist/types/@intlayer/core/dist/types/localization/generateSitemap.d.ts +2 -0
  147. package/dist/types/@intlayer/core/dist/types/localization/getBrowserLocale.d.ts +1 -0
  148. package/dist/types/@intlayer/core/dist/types/localization/getCanonicalPath.d.ts +2 -0
  149. package/dist/types/@intlayer/core/dist/types/localization/getHTMLTextDir.d.ts +1 -0
  150. package/dist/types/@intlayer/core/dist/types/localization/getLocale.d.ts +1 -0
  151. package/dist/types/@intlayer/core/dist/types/localization/getLocaleFromPath.d.ts +2 -0
  152. package/dist/types/@intlayer/core/dist/types/localization/getLocaleFromRequest.d.ts +1 -0
  153. package/dist/types/@intlayer/core/dist/types/localization/getLocaleLang.d.ts +1 -0
  154. package/dist/types/@intlayer/core/dist/types/localization/getLocaleName.d.ts +1 -0
  155. package/dist/types/@intlayer/core/dist/types/localization/getLocalizedPath.d.ts +2 -0
  156. package/dist/types/@intlayer/core/dist/types/localization/getLocalizedUrl.d.ts +2 -0
  157. package/dist/types/@intlayer/core/dist/types/localization/getMultilingualUrls.d.ts +2 -0
  158. package/dist/types/@intlayer/core/dist/types/localization/getPathWithoutLocale.d.ts +1 -0
  159. package/dist/types/@intlayer/core/dist/types/localization/getPrefix.d.ts +2 -0
  160. package/dist/types/@intlayer/core/dist/types/localization/index.d.ts +23 -0
  161. package/dist/types/@intlayer/core/dist/types/localization/localeDetector.d.ts +2 -0
  162. package/dist/types/@intlayer/core/dist/types/localization/localeMapper.d.ts +1 -0
  163. package/dist/types/@intlayer/core/dist/types/localization/localeResolver.d.ts +1 -0
  164. package/dist/types/@intlayer/core/dist/types/localization/resolveBrowserLocale.d.ts +2 -0
  165. package/dist/types/@intlayer/core/dist/types/localization/rewriteMatch.d.ts +1 -0
  166. package/dist/types/@intlayer/core/dist/types/localization/rewriteUtils.d.ts +2 -0
  167. package/dist/types/@intlayer/core/dist/types/localization/validatePrefix.d.ts +2 -0
  168. package/dist/types/@intlayer/core/dist/types/markdown/index.d.ts +2 -0
  169. package/dist/types/@intlayer/core/dist/types/transpiler/condition/condition.d.ts +1 -0
  170. package/dist/types/@intlayer/core/dist/types/transpiler/condition/index.d.ts +1 -0
  171. package/dist/types/@intlayer/core/dist/types/transpiler/enumeration/enumeration.d.ts +1 -0
  172. package/dist/types/@intlayer/core/dist/types/transpiler/enumeration/index.d.ts +1 -0
  173. package/dist/types/@intlayer/core/dist/types/transpiler/file/file.d.ts +1 -0
  174. package/dist/types/@intlayer/core/dist/types/transpiler/file/index.d.ts +1 -0
  175. package/dist/types/@intlayer/core/dist/types/transpiler/gender/gender.d.ts +1 -0
  176. package/dist/types/@intlayer/core/dist/types/transpiler/gender/index.d.ts +1 -0
  177. package/dist/types/@intlayer/core/dist/types/transpiler/html/html.d.ts +1 -0
  178. package/dist/types/@intlayer/core/dist/types/transpiler/html/index.d.ts +1 -0
  179. package/dist/types/@intlayer/core/dist/types/transpiler/index.d.ts +22 -0
  180. package/dist/types/@intlayer/core/dist/types/transpiler/insertion/index.d.ts +1 -0
  181. package/dist/types/@intlayer/core/dist/types/transpiler/insertion/insertion.d.ts +1 -0
  182. package/dist/types/@intlayer/core/dist/types/transpiler/markdown/index.d.ts +1 -0
  183. package/dist/types/@intlayer/core/dist/types/transpiler/markdown/markdown.d.ts +1 -0
  184. package/dist/types/@intlayer/core/dist/types/transpiler/nesting/index.d.ts +1 -0
  185. package/dist/types/@intlayer/core/dist/types/transpiler/nesting/nesting.d.ts +4 -0
  186. package/dist/types/@intlayer/core/dist/types/transpiler/plural/index.d.ts +1 -0
  187. package/dist/types/@intlayer/core/dist/types/transpiler/plural/plural.d.ts +1 -0
  188. package/dist/types/@intlayer/core/dist/types/transpiler/select/index.d.ts +1 -0
  189. package/dist/types/@intlayer/core/dist/types/transpiler/select/select.d.ts +1 -0
  190. package/dist/types/@intlayer/core/dist/types/transpiler/translation/index.d.ts +1 -0
  191. package/dist/types/@intlayer/core/dist/types/transpiler/translation/translation.d.ts +2 -0
  192. package/dist/types/@intlayer/core/dist/types/utils/index.d.ts +3 -0
  193. package/dist/types/@intlayer/core/dist/types/utils/intl.d.ts +1 -0
  194. package/dist/types/@intlayer/core/dist/types/utils/isSameKeyPath.d.ts +1 -0
  195. package/dist/types/@intlayer/core/dist/types/utils/localeStorage.d.ts +2 -0
  196. package/dist/types/ai.d.ts +549 -0
  197. package/dist/types/ai.d.ts.map +1 -0
  198. package/dist/types/analytics.d.ts +378 -0
  199. package/dist/types/analytics.d.ts.map +1 -0
  200. package/dist/types/asset.d.ts +207 -0
  201. package/dist/types/asset.d.ts.map +1 -0
  202. package/dist/types/blogComment.d.ts +241 -0
  203. package/dist/types/blogComment.d.ts.map +1 -0
  204. package/dist/types/cliSessionToken.d.ts +264 -0
  205. package/dist/types/cliSessionToken.d.ts.map +1 -0
  206. package/dist/types/common.d.ts +32 -0
  207. package/dist/types/common.d.ts.map +1 -0
  208. package/dist/types/defineRoute.d.ts +57 -0
  209. package/dist/types/defineRoute.d.ts.map +1 -0
  210. package/dist/types/demo.d.ts +21 -0
  211. package/dist/types/demo.d.ts.map +1 -0
  212. package/dist/types/dictionary.d.ts +360 -0
  213. package/dist/types/dictionary.d.ts.map +1 -0
  214. package/dist/types/environment.d.ts +285 -0
  215. package/dist/types/environment.d.ts.map +1 -0
  216. package/dist/types/eventListener.d.ts +17 -0
  217. package/dist/types/eventListener.d.ts.map +1 -0
  218. package/dist/types/gitProviders.d.ts +807 -0
  219. package/dist/types/gitProviders.d.ts.map +1 -0
  220. package/dist/types/intlayer/dist/types/index.d.ts +13 -0
  221. package/dist/types/newsletter.d.ts +165 -0
  222. package/dist/types/newsletter.d.ts.map +1 -0
  223. package/dist/types/oAuth2.d.ts +482 -0
  224. package/dist/types/oAuth2.d.ts.map +1 -0
  225. package/dist/types/organization.d.ts +1069 -0
  226. package/dist/types/organization.d.ts.map +1 -0
  227. package/dist/types/project.d.ts +1735 -0
  228. package/dist/types/project.d.ts.map +1 -0
  229. package/dist/types/public.d.ts +109 -0
  230. package/dist/types/public.d.ts.map +1 -0
  231. package/dist/types/responseData.d.ts +68 -0
  232. package/dist/types/responseData.d.ts.map +1 -0
  233. package/dist/types/reviewer.d.ts +1239 -0
  234. package/dist/types/reviewer.d.ts.map +1 -0
  235. package/dist/types/scan.d.ts +625 -0
  236. package/dist/types/scan.d.ts.map +1 -0
  237. package/dist/types/search.d.ts +55 -0
  238. package/dist/types/search.d.ts.map +1 -0
  239. package/dist/types/session.d.ts +286 -0
  240. package/dist/types/session.d.ts.map +1 -0
  241. package/dist/types/showcaseProject.d.ts +550 -0
  242. package/dist/types/showcaseProject.d.ts.map +1 -0
  243. package/dist/types/stripe.d.ts +1219 -0
  244. package/dist/types/stripe.d.ts.map +1 -0
  245. package/dist/types/tag.d.ts +193 -0
  246. package/dist/types/tag.d.ts.map +1 -0
  247. package/dist/types/translation.d.ts +162 -0
  248. package/dist/types/translation.d.ts.map +1 -0
  249. package/dist/types/user.d.ts +447 -0
  250. package/dist/types/user.d.ts.map +1 -0
  251. package/package.json +300 -4
  252. package/README.md +0 -3
@@ -0,0 +1,1239 @@
1
+ import { RouteBodyInput, RouteDefinition, RouteGroup, RouteQuerystring } from "./defineRoute.js";
2
+ import { PaginatedResponse, ResponseData } from "./responseData.js";
3
+ import { z } from "zod/mini";
4
+ //#region src/reviewer.d.ts
5
+ export declare const reviewerStatusSchema: z.ZodMiniEnum<{
6
+ active: "active";
7
+ pending: "pending";
8
+ suspended: "suspended";
9
+ }>;
10
+ export declare const reviewerCategorySchema: z.ZodMiniEnum<{
11
+ copywriter: "copywriter";
12
+ marketing: "marketing";
13
+ proofreader: "proofreader";
14
+ seo: "seo";
15
+ technical_writer: "technical_writer";
16
+ translator: "translator";
17
+ }>;
18
+ /** Reviewer categories, usable as values. */
19
+ export declare const REVIEWER_CATEGORIES: ("copywriter" | "marketing" | "proofreader" | "seo" | "technical_writer" | "translator")[];
20
+ export declare const missionStatusSchema: z.ZodMiniEnum<{
21
+ accepted: "accepted";
22
+ canceled: "canceled";
23
+ client_review: "client_review";
24
+ completed: "completed";
25
+ in_progress: "in_progress";
26
+ pending: "pending";
27
+ reviewer_review: "reviewer_review";
28
+ }>;
29
+ /** Public reviewer profile (marketplace). */
30
+ export declare const reviewerProfileSchema: z.ZodMiniObject<{
31
+ id: z.ZodMiniString<string>;
32
+ userId: z.ZodMiniString<string>;
33
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
34
+ avatar: z.ZodMiniOptional<z.ZodMiniString<string>>;
35
+ bio: z.ZodMiniOptional<z.ZodMiniString<string>>;
36
+ mainPicture: z.ZodMiniOptional<z.ZodMiniString<string>>;
37
+ coverPicture: z.ZodMiniOptional<z.ZodMiniString<string>>;
38
+ languagePairs: z.ZodMiniArray<z.ZodMiniObject<{
39
+ from: z.ZodMiniString<string>;
40
+ to: z.ZodMiniString<string>;
41
+ }, z.core.$strip>>;
42
+ categories: z.ZodMiniArray<z.ZodMiniEnum<{
43
+ copywriter: "copywriter";
44
+ marketing: "marketing";
45
+ proofreader: "proofreader";
46
+ seo: "seo";
47
+ technical_writer: "technical_writer";
48
+ translator: "translator";
49
+ }>>;
50
+ pricePerHour: z.ZodMiniNumber<number>;
51
+ status: z.ZodMiniEnum<{
52
+ active: "active";
53
+ pending: "pending";
54
+ suspended: "suspended";
55
+ }>;
56
+ totalMissions: z.ZodMiniNumber<number>;
57
+ averageRating: z.ZodMiniNumber<number>;
58
+ reviewCount: z.ZodMiniNumber<number>;
59
+ socialLinks: z.ZodMiniOptional<z.ZodMiniObject<{
60
+ github: z.ZodMiniOptional<z.ZodMiniString<string>>;
61
+ linkedin: z.ZodMiniOptional<z.ZodMiniString<string>>;
62
+ portfolio: z.ZodMiniOptional<z.ZodMiniString<string>>;
63
+ }, z.core.$strip>>;
64
+ isHidden: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
65
+ createdAt: z.ZodMiniString<string>;
66
+ updatedAt: z.ZodMiniString<string>;
67
+ }, z.core.$loose>;
68
+ /** Booked review/translation work. */
69
+ export declare const translationMissionSchema: z.ZodMiniObject<{
70
+ id: z.ZodMiniString<string>;
71
+ reviewerId: z.ZodMiniString<string>;
72
+ clientUserId: z.ZodMiniString<string>;
73
+ projectId: z.ZodMiniOptional<z.ZodMiniString<string>>;
74
+ dictionaryIds: z.ZodMiniArray<z.ZodMiniString<string>>;
75
+ sourceLocale: z.ZodMiniOptional<z.ZodMiniString<string>>;
76
+ targetLocales: z.ZodMiniArray<z.ZodMiniString<string>>;
77
+ wordCount: z.ZodMiniNumber<number>;
78
+ estimatedHours: z.ZodMiniNumber<number>;
79
+ pricePerHour: z.ZodMiniNumber<number>;
80
+ totalPrice: z.ZodMiniNumber<number>;
81
+ currency: z.ZodMiniString<string>;
82
+ status: z.ZodMiniEnum<{
83
+ accepted: "accepted";
84
+ canceled: "canceled";
85
+ client_review: "client_review";
86
+ completed: "completed";
87
+ in_progress: "in_progress";
88
+ pending: "pending";
89
+ reviewer_review: "reviewer_review";
90
+ }>;
91
+ notes: z.ZodMiniOptional<z.ZodMiniString<string>>;
92
+ aiPreGeneratedAt: z.ZodMiniOptional<z.ZodMiniString<string>>;
93
+ completedAt: z.ZodMiniOptional<z.ZodMiniString<string>>;
94
+ canceledAt: z.ZodMiniOptional<z.ZodMiniString<string>>;
95
+ createdAt: z.ZodMiniString<string>;
96
+ updatedAt: z.ZodMiniString<string>;
97
+ }, z.core.$loose>;
98
+ export declare const reviewerReviewSchema: z.ZodMiniObject<{
99
+ id: z.ZodMiniString<string>;
100
+ missionId: z.ZodMiniString<string>;
101
+ reviewerId: z.ZodMiniString<string>;
102
+ rating: z.ZodMiniNumber<number>;
103
+ comment: z.ZodMiniOptional<z.ZodMiniString<string>>;
104
+ createdAt: z.ZodMiniString<string>;
105
+ updatedAt: z.ZodMiniString<string>;
106
+ }, z.core.$loose>;
107
+ export declare const reviewerMessageSchema: z.ZodMiniObject<{
108
+ id: z.ZodMiniString<string>;
109
+ missionId: z.ZodMiniString<string>;
110
+ senderId: z.ZodMiniString<string>;
111
+ content: z.ZodMiniString<string>;
112
+ readAt: z.ZodMiniOptional<z.ZodMiniString<string>>;
113
+ createdAt: z.ZodMiniString<string>;
114
+ updatedAt: z.ZodMiniString<string>;
115
+ }, z.core.$loose>;
116
+ export declare const missionEstimateSchema: z.ZodMiniObject<{
117
+ wordCount: z.ZodMiniNumber<number>;
118
+ estimatedHours: z.ZodMiniNumber<number>;
119
+ totalPrice: z.ZodMiniNumber<number>;
120
+ currency: z.ZodMiniString<string>;
121
+ }, z.core.$strip>;
122
+ export declare const priceDistributionSchema: z.ZodMiniObject<{
123
+ buckets: z.ZodMiniArray<z.ZodMiniObject<{
124
+ min: z.ZodMiniNumber<number>;
125
+ max: z.ZodMiniNumber<number>;
126
+ count: z.ZodMiniNumber<number>;
127
+ }, z.core.$strip>>;
128
+ globalMin: z.ZodMiniNumber<number>;
129
+ globalMax: z.ZodMiniNumber<number>;
130
+ }, z.core.$strip>;
131
+ /** REST contract of the `/api/reviewer` routes (translator marketplace). */
132
+ export declare const reviewerContract: RouteGroup<"/api/reviewer", {
133
+ readonly getMarketplace: RouteDefinition<"GET", "/marketplace", {
134
+ readonly querystring: z.ZodMiniObject<{
135
+ page: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>;
136
+ pageSize: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>;
137
+ fromLocale: z.ZodMiniOptional<z.ZodMiniString<string>>;
138
+ toLocale: z.ZodMiniOptional<z.ZodMiniString<string>>;
139
+ minRating: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>;
140
+ categories: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
141
+ maxPricePerHour: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>;
142
+ minPricePerHour: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>;
143
+ }, z.core.$strip>;
144
+ readonly response: {
145
+ 200: z.ZodMiniObject<{
146
+ success: z.ZodMiniBoolean<boolean>;
147
+ status: z.ZodMiniNumber<number>;
148
+ message: z.ZodMiniOptional<z.ZodMiniString<string>>;
149
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
150
+ data: z.ZodMiniNullable<z.ZodMiniArray<z.ZodMiniObject<{
151
+ id: z.ZodMiniString<string>;
152
+ userId: z.ZodMiniString<string>;
153
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
154
+ avatar: z.ZodMiniOptional<z.ZodMiniString<string>>;
155
+ bio: z.ZodMiniOptional<z.ZodMiniString<string>>;
156
+ mainPicture: z.ZodMiniOptional<z.ZodMiniString<string>>;
157
+ coverPicture: z.ZodMiniOptional<z.ZodMiniString<string>>;
158
+ languagePairs: z.ZodMiniArray<z.ZodMiniObject<{
159
+ from: z.ZodMiniString<string>;
160
+ to: z.ZodMiniString<string>;
161
+ }, z.core.$strip>>;
162
+ categories: z.ZodMiniArray<z.ZodMiniEnum<{
163
+ copywriter: "copywriter";
164
+ marketing: "marketing";
165
+ proofreader: "proofreader";
166
+ seo: "seo";
167
+ technical_writer: "technical_writer";
168
+ translator: "translator";
169
+ }>>;
170
+ pricePerHour: z.ZodMiniNumber<number>;
171
+ status: z.ZodMiniEnum<{
172
+ active: "active";
173
+ pending: "pending";
174
+ suspended: "suspended";
175
+ }>;
176
+ totalMissions: z.ZodMiniNumber<number>;
177
+ averageRating: z.ZodMiniNumber<number>;
178
+ reviewCount: z.ZodMiniNumber<number>;
179
+ socialLinks: z.ZodMiniOptional<z.ZodMiniObject<{
180
+ github: z.ZodMiniOptional<z.ZodMiniString<string>>;
181
+ linkedin: z.ZodMiniOptional<z.ZodMiniString<string>>;
182
+ portfolio: z.ZodMiniOptional<z.ZodMiniString<string>>;
183
+ }, z.core.$strip>>;
184
+ isHidden: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
185
+ createdAt: z.ZodMiniString<string>;
186
+ updatedAt: z.ZodMiniString<string>;
187
+ }, z.core.$loose>>>;
188
+ error: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
189
+ code: z.ZodMiniString<string>;
190
+ title: z.ZodMiniString<string>;
191
+ message: z.ZodMiniString<string>;
192
+ }, z.core.$loose>, z.ZodMiniArray<z.ZodMiniObject<{
193
+ code: z.ZodMiniString<string>;
194
+ title: z.ZodMiniString<string>;
195
+ message: z.ZodMiniString<string>;
196
+ }, z.core.$loose>>]>>;
197
+ page: z.ZodMiniNullable<z.ZodMiniNumber<number>>;
198
+ page_size: z.ZodMiniNullable<z.ZodMiniNumber<number>>;
199
+ total_pages: z.ZodMiniNullable<z.ZodMiniNumber<number>>;
200
+ total_items: z.ZodMiniNullable<z.ZodMiniNumber<number>>;
201
+ }, z.core.$strip>;
202
+ };
203
+ }>;
204
+ readonly getPriceDistribution: RouteDefinition<"GET", "/marketplace/price-distribution", {
205
+ readonly querystring: z.ZodMiniObject<{
206
+ fromLocale: z.ZodMiniOptional<z.ZodMiniString<string>>;
207
+ toLocale: z.ZodMiniOptional<z.ZodMiniString<string>>;
208
+ minRating: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>;
209
+ categories: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniArray<z.ZodMiniString<string>>]>>;
210
+ }, z.core.$strip>;
211
+ readonly response: {
212
+ 200: z.ZodMiniObject<{
213
+ success: z.ZodMiniBoolean<boolean>;
214
+ status: z.ZodMiniNumber<number>;
215
+ message: z.ZodMiniOptional<z.ZodMiniString<string>>;
216
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
217
+ data: z.ZodMiniNullable<z.ZodMiniObject<{
218
+ buckets: z.ZodMiniArray<z.ZodMiniObject<{
219
+ min: z.ZodMiniNumber<number>;
220
+ max: z.ZodMiniNumber<number>;
221
+ count: z.ZodMiniNumber<number>;
222
+ }, z.core.$strip>>;
223
+ globalMin: z.ZodMiniNumber<number>;
224
+ globalMax: z.ZodMiniNumber<number>;
225
+ }, z.core.$strip>>;
226
+ error: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
227
+ code: z.ZodMiniString<string>;
228
+ title: z.ZodMiniString<string>;
229
+ message: z.ZodMiniString<string>;
230
+ }, z.core.$loose>, z.ZodMiniArray<z.ZodMiniObject<{
231
+ code: z.ZodMiniString<string>;
232
+ title: z.ZodMiniString<string>;
233
+ message: z.ZodMiniString<string>;
234
+ }, z.core.$loose>>]>>;
235
+ }, z.core.$strip>;
236
+ };
237
+ }>;
238
+ readonly getMyReviewerProfile: RouteDefinition<"GET", "/me", {
239
+ readonly response: {
240
+ 200: z.ZodMiniObject<{
241
+ success: z.ZodMiniBoolean<boolean>;
242
+ status: z.ZodMiniNumber<number>;
243
+ message: z.ZodMiniOptional<z.ZodMiniString<string>>;
244
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
245
+ data: z.ZodMiniNullable<z.ZodMiniNullable<z.ZodMiniObject<{
246
+ id: z.ZodMiniString<string>;
247
+ userId: z.ZodMiniString<string>;
248
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
249
+ avatar: z.ZodMiniOptional<z.ZodMiniString<string>>;
250
+ bio: z.ZodMiniOptional<z.ZodMiniString<string>>;
251
+ mainPicture: z.ZodMiniOptional<z.ZodMiniString<string>>;
252
+ coverPicture: z.ZodMiniOptional<z.ZodMiniString<string>>;
253
+ languagePairs: z.ZodMiniArray<z.ZodMiniObject<{
254
+ from: z.ZodMiniString<string>;
255
+ to: z.ZodMiniString<string>;
256
+ }, z.core.$strip>>;
257
+ categories: z.ZodMiniArray<z.ZodMiniEnum<{
258
+ copywriter: "copywriter";
259
+ marketing: "marketing";
260
+ proofreader: "proofreader";
261
+ seo: "seo";
262
+ technical_writer: "technical_writer";
263
+ translator: "translator";
264
+ }>>;
265
+ pricePerHour: z.ZodMiniNumber<number>;
266
+ status: z.ZodMiniEnum<{
267
+ active: "active";
268
+ pending: "pending";
269
+ suspended: "suspended";
270
+ }>;
271
+ totalMissions: z.ZodMiniNumber<number>;
272
+ averageRating: z.ZodMiniNumber<number>;
273
+ reviewCount: z.ZodMiniNumber<number>;
274
+ socialLinks: z.ZodMiniOptional<z.ZodMiniObject<{
275
+ github: z.ZodMiniOptional<z.ZodMiniString<string>>;
276
+ linkedin: z.ZodMiniOptional<z.ZodMiniString<string>>;
277
+ portfolio: z.ZodMiniOptional<z.ZodMiniString<string>>;
278
+ }, z.core.$strip>>;
279
+ isHidden: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
280
+ createdAt: z.ZodMiniString<string>;
281
+ updatedAt: z.ZodMiniString<string>;
282
+ }, z.core.$loose>>>;
283
+ error: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
284
+ code: z.ZodMiniString<string>;
285
+ title: z.ZodMiniString<string>;
286
+ message: z.ZodMiniString<string>;
287
+ }, z.core.$loose>, z.ZodMiniArray<z.ZodMiniObject<{
288
+ code: z.ZodMiniString<string>;
289
+ title: z.ZodMiniString<string>;
290
+ message: z.ZodMiniString<string>;
291
+ }, z.core.$loose>>]>>;
292
+ }, z.core.$strip>;
293
+ };
294
+ }>;
295
+ readonly getReviewerReviews: RouteDefinition<"GET", "/:reviewerId/reviews", {
296
+ readonly params: z.ZodMiniObject<{
297
+ reviewerId: z.ZodMiniString<string>;
298
+ }, z.core.$strip>;
299
+ readonly querystring: z.ZodMiniObject<{
300
+ page: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>;
301
+ pageSize: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>;
302
+ }, z.core.$strip>;
303
+ readonly response: {
304
+ 200: z.ZodMiniObject<{
305
+ success: z.ZodMiniBoolean<boolean>;
306
+ status: z.ZodMiniNumber<number>;
307
+ message: z.ZodMiniOptional<z.ZodMiniString<string>>;
308
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
309
+ data: z.ZodMiniNullable<z.ZodMiniArray<z.ZodMiniObject<{
310
+ id: z.ZodMiniString<string>;
311
+ missionId: z.ZodMiniString<string>;
312
+ reviewerId: z.ZodMiniString<string>;
313
+ rating: z.ZodMiniNumber<number>;
314
+ comment: z.ZodMiniOptional<z.ZodMiniString<string>>;
315
+ createdAt: z.ZodMiniString<string>;
316
+ updatedAt: z.ZodMiniString<string>;
317
+ }, z.core.$loose>>>;
318
+ error: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
319
+ code: z.ZodMiniString<string>;
320
+ title: z.ZodMiniString<string>;
321
+ message: z.ZodMiniString<string>;
322
+ }, z.core.$loose>, z.ZodMiniArray<z.ZodMiniObject<{
323
+ code: z.ZodMiniString<string>;
324
+ title: z.ZodMiniString<string>;
325
+ message: z.ZodMiniString<string>;
326
+ }, z.core.$loose>>]>>;
327
+ page: z.ZodMiniNullable<z.ZodMiniNumber<number>>;
328
+ page_size: z.ZodMiniNullable<z.ZodMiniNumber<number>>;
329
+ total_pages: z.ZodMiniNullable<z.ZodMiniNumber<number>>;
330
+ total_items: z.ZodMiniNullable<z.ZodMiniNumber<number>>;
331
+ }, z.core.$strip>;
332
+ };
333
+ }>;
334
+ readonly getReviewerById: RouteDefinition<"GET", "/:reviewerId", {
335
+ readonly params: z.ZodMiniObject<{
336
+ reviewerId: z.ZodMiniString<string>;
337
+ }, z.core.$strip>;
338
+ readonly response: {
339
+ 200: z.ZodMiniObject<{
340
+ success: z.ZodMiniBoolean<boolean>;
341
+ status: z.ZodMiniNumber<number>;
342
+ message: z.ZodMiniOptional<z.ZodMiniString<string>>;
343
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
344
+ data: z.ZodMiniNullable<z.ZodMiniObject<{
345
+ id: z.ZodMiniString<string>;
346
+ userId: z.ZodMiniString<string>;
347
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
348
+ avatar: z.ZodMiniOptional<z.ZodMiniString<string>>;
349
+ bio: z.ZodMiniOptional<z.ZodMiniString<string>>;
350
+ mainPicture: z.ZodMiniOptional<z.ZodMiniString<string>>;
351
+ coverPicture: z.ZodMiniOptional<z.ZodMiniString<string>>;
352
+ languagePairs: z.ZodMiniArray<z.ZodMiniObject<{
353
+ from: z.ZodMiniString<string>;
354
+ to: z.ZodMiniString<string>;
355
+ }, z.core.$strip>>;
356
+ categories: z.ZodMiniArray<z.ZodMiniEnum<{
357
+ copywriter: "copywriter";
358
+ marketing: "marketing";
359
+ proofreader: "proofreader";
360
+ seo: "seo";
361
+ technical_writer: "technical_writer";
362
+ translator: "translator";
363
+ }>>;
364
+ pricePerHour: z.ZodMiniNumber<number>;
365
+ status: z.ZodMiniEnum<{
366
+ active: "active";
367
+ pending: "pending";
368
+ suspended: "suspended";
369
+ }>;
370
+ totalMissions: z.ZodMiniNumber<number>;
371
+ averageRating: z.ZodMiniNumber<number>;
372
+ reviewCount: z.ZodMiniNumber<number>;
373
+ socialLinks: z.ZodMiniOptional<z.ZodMiniObject<{
374
+ github: z.ZodMiniOptional<z.ZodMiniString<string>>;
375
+ linkedin: z.ZodMiniOptional<z.ZodMiniString<string>>;
376
+ portfolio: z.ZodMiniOptional<z.ZodMiniString<string>>;
377
+ }, z.core.$strip>>;
378
+ isHidden: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
379
+ createdAt: z.ZodMiniString<string>;
380
+ updatedAt: z.ZodMiniString<string>;
381
+ }, z.core.$loose>>;
382
+ error: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
383
+ code: z.ZodMiniString<string>;
384
+ title: z.ZodMiniString<string>;
385
+ message: z.ZodMiniString<string>;
386
+ }, z.core.$loose>, z.ZodMiniArray<z.ZodMiniObject<{
387
+ code: z.ZodMiniString<string>;
388
+ title: z.ZodMiniString<string>;
389
+ message: z.ZodMiniString<string>;
390
+ }, z.core.$loose>>]>>;
391
+ }, z.core.$strip>;
392
+ };
393
+ }>;
394
+ readonly registerAsReviewer: RouteDefinition<"POST", "/register", {
395
+ readonly body: z.ZodMiniObject<{
396
+ bio: z.ZodMiniOptional<z.ZodMiniString<string>>;
397
+ languagePairs: z.ZodMiniArray<z.ZodMiniObject<{
398
+ from: z.ZodMiniString<string>;
399
+ to: z.ZodMiniString<string>;
400
+ }, z.core.$strip>>;
401
+ categories: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniEnum<{
402
+ copywriter: "copywriter";
403
+ marketing: "marketing";
404
+ proofreader: "proofreader";
405
+ seo: "seo";
406
+ technical_writer: "technical_writer";
407
+ translator: "translator";
408
+ }>>>;
409
+ pricePerHour: z.ZodMiniNumber<number>;
410
+ socialLinks: z.ZodMiniOptional<z.ZodMiniObject<{
411
+ github: z.ZodMiniOptional<z.ZodMiniString<string>>;
412
+ linkedin: z.ZodMiniOptional<z.ZodMiniString<string>>;
413
+ portfolio: z.ZodMiniOptional<z.ZodMiniString<string>>;
414
+ }, z.core.$strip>>;
415
+ }, z.core.$strip>;
416
+ readonly response: {
417
+ 200: z.ZodMiniObject<{
418
+ success: z.ZodMiniBoolean<boolean>;
419
+ status: z.ZodMiniNumber<number>;
420
+ message: z.ZodMiniOptional<z.ZodMiniString<string>>;
421
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
422
+ data: z.ZodMiniNullable<z.ZodMiniObject<{
423
+ id: z.ZodMiniString<string>;
424
+ userId: z.ZodMiniString<string>;
425
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
426
+ avatar: z.ZodMiniOptional<z.ZodMiniString<string>>;
427
+ bio: z.ZodMiniOptional<z.ZodMiniString<string>>;
428
+ mainPicture: z.ZodMiniOptional<z.ZodMiniString<string>>;
429
+ coverPicture: z.ZodMiniOptional<z.ZodMiniString<string>>;
430
+ languagePairs: z.ZodMiniArray<z.ZodMiniObject<{
431
+ from: z.ZodMiniString<string>;
432
+ to: z.ZodMiniString<string>;
433
+ }, z.core.$strip>>;
434
+ categories: z.ZodMiniArray<z.ZodMiniEnum<{
435
+ copywriter: "copywriter";
436
+ marketing: "marketing";
437
+ proofreader: "proofreader";
438
+ seo: "seo";
439
+ technical_writer: "technical_writer";
440
+ translator: "translator";
441
+ }>>;
442
+ pricePerHour: z.ZodMiniNumber<number>;
443
+ status: z.ZodMiniEnum<{
444
+ active: "active";
445
+ pending: "pending";
446
+ suspended: "suspended";
447
+ }>;
448
+ totalMissions: z.ZodMiniNumber<number>;
449
+ averageRating: z.ZodMiniNumber<number>;
450
+ reviewCount: z.ZodMiniNumber<number>;
451
+ socialLinks: z.ZodMiniOptional<z.ZodMiniObject<{
452
+ github: z.ZodMiniOptional<z.ZodMiniString<string>>;
453
+ linkedin: z.ZodMiniOptional<z.ZodMiniString<string>>;
454
+ portfolio: z.ZodMiniOptional<z.ZodMiniString<string>>;
455
+ }, z.core.$strip>>;
456
+ isHidden: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
457
+ createdAt: z.ZodMiniString<string>;
458
+ updatedAt: z.ZodMiniString<string>;
459
+ }, z.core.$loose>>;
460
+ error: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
461
+ code: z.ZodMiniString<string>;
462
+ title: z.ZodMiniString<string>;
463
+ message: z.ZodMiniString<string>;
464
+ }, z.core.$loose>, z.ZodMiniArray<z.ZodMiniObject<{
465
+ code: z.ZodMiniString<string>;
466
+ title: z.ZodMiniString<string>;
467
+ message: z.ZodMiniString<string>;
468
+ }, z.core.$loose>>]>>;
469
+ }, z.core.$strip>;
470
+ };
471
+ }>;
472
+ readonly updateReviewerProfile: RouteDefinition<"PUT", "/", {
473
+ readonly body: z.ZodMiniObject<{
474
+ bio: z.ZodMiniOptional<z.ZodMiniOptional<z.ZodMiniString<string>>>;
475
+ languagePairs: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
476
+ from: z.ZodMiniString<string>;
477
+ to: z.ZodMiniString<string>;
478
+ }, z.core.$strip>>>;
479
+ categories: z.ZodMiniOptional<z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniEnum<{
480
+ copywriter: "copywriter";
481
+ marketing: "marketing";
482
+ proofreader: "proofreader";
483
+ seo: "seo";
484
+ technical_writer: "technical_writer";
485
+ translator: "translator";
486
+ }>>>>;
487
+ pricePerHour: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
488
+ socialLinks: z.ZodMiniOptional<z.ZodMiniOptional<z.ZodMiniObject<{
489
+ github: z.ZodMiniOptional<z.ZodMiniString<string>>;
490
+ linkedin: z.ZodMiniOptional<z.ZodMiniString<string>>;
491
+ portfolio: z.ZodMiniOptional<z.ZodMiniString<string>>;
492
+ }, z.core.$strip>>>;
493
+ isHidden: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
494
+ }, z.core.$strip>;
495
+ readonly response: {
496
+ 200: z.ZodMiniObject<{
497
+ success: z.ZodMiniBoolean<boolean>;
498
+ status: z.ZodMiniNumber<number>;
499
+ message: z.ZodMiniOptional<z.ZodMiniString<string>>;
500
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
501
+ data: z.ZodMiniNullable<z.ZodMiniObject<{
502
+ id: z.ZodMiniString<string>;
503
+ userId: z.ZodMiniString<string>;
504
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
505
+ avatar: z.ZodMiniOptional<z.ZodMiniString<string>>;
506
+ bio: z.ZodMiniOptional<z.ZodMiniString<string>>;
507
+ mainPicture: z.ZodMiniOptional<z.ZodMiniString<string>>;
508
+ coverPicture: z.ZodMiniOptional<z.ZodMiniString<string>>;
509
+ languagePairs: z.ZodMiniArray<z.ZodMiniObject<{
510
+ from: z.ZodMiniString<string>;
511
+ to: z.ZodMiniString<string>;
512
+ }, z.core.$strip>>;
513
+ categories: z.ZodMiniArray<z.ZodMiniEnum<{
514
+ copywriter: "copywriter";
515
+ marketing: "marketing";
516
+ proofreader: "proofreader";
517
+ seo: "seo";
518
+ technical_writer: "technical_writer";
519
+ translator: "translator";
520
+ }>>;
521
+ pricePerHour: z.ZodMiniNumber<number>;
522
+ status: z.ZodMiniEnum<{
523
+ active: "active";
524
+ pending: "pending";
525
+ suspended: "suspended";
526
+ }>;
527
+ totalMissions: z.ZodMiniNumber<number>;
528
+ averageRating: z.ZodMiniNumber<number>;
529
+ reviewCount: z.ZodMiniNumber<number>;
530
+ socialLinks: z.ZodMiniOptional<z.ZodMiniObject<{
531
+ github: z.ZodMiniOptional<z.ZodMiniString<string>>;
532
+ linkedin: z.ZodMiniOptional<z.ZodMiniString<string>>;
533
+ portfolio: z.ZodMiniOptional<z.ZodMiniString<string>>;
534
+ }, z.core.$strip>>;
535
+ isHidden: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
536
+ createdAt: z.ZodMiniString<string>;
537
+ updatedAt: z.ZodMiniString<string>;
538
+ }, z.core.$loose>>;
539
+ error: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
540
+ code: z.ZodMiniString<string>;
541
+ title: z.ZodMiniString<string>;
542
+ message: z.ZodMiniString<string>;
543
+ }, z.core.$loose>, z.ZodMiniArray<z.ZodMiniObject<{
544
+ code: z.ZodMiniString<string>;
545
+ title: z.ZodMiniString<string>;
546
+ message: z.ZodMiniString<string>;
547
+ }, z.core.$loose>>]>>;
548
+ }, z.core.$strip>;
549
+ };
550
+ }>;
551
+ readonly deleteReviewerProfile: RouteDefinition<"DELETE", "/", {
552
+ readonly response: {
553
+ 200: z.ZodMiniObject<{
554
+ success: z.ZodMiniBoolean<boolean>;
555
+ status: z.ZodMiniNumber<number>;
556
+ message: z.ZodMiniOptional<z.ZodMiniString<string>>;
557
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
558
+ data: z.ZodMiniNullable<z.ZodMiniNull>;
559
+ error: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
560
+ code: z.ZodMiniString<string>;
561
+ title: z.ZodMiniString<string>;
562
+ message: z.ZodMiniString<string>;
563
+ }, z.core.$loose>, z.ZodMiniArray<z.ZodMiniObject<{
564
+ code: z.ZodMiniString<string>;
565
+ title: z.ZodMiniString<string>;
566
+ message: z.ZodMiniString<string>;
567
+ }, z.core.$loose>>]>>;
568
+ }, z.core.$strip>;
569
+ };
570
+ }>;
571
+ readonly uploadMainPicture: RouteDefinition<"POST", "/me/picture/main", {
572
+ readonly response: {
573
+ 200: z.ZodMiniObject<{
574
+ success: z.ZodMiniBoolean<boolean>;
575
+ status: z.ZodMiniNumber<number>;
576
+ message: z.ZodMiniOptional<z.ZodMiniString<string>>;
577
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
578
+ data: z.ZodMiniNullable<z.ZodMiniObject<{
579
+ id: z.ZodMiniString<string>;
580
+ userId: z.ZodMiniString<string>;
581
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
582
+ avatar: z.ZodMiniOptional<z.ZodMiniString<string>>;
583
+ bio: z.ZodMiniOptional<z.ZodMiniString<string>>;
584
+ mainPicture: z.ZodMiniOptional<z.ZodMiniString<string>>;
585
+ coverPicture: z.ZodMiniOptional<z.ZodMiniString<string>>;
586
+ languagePairs: z.ZodMiniArray<z.ZodMiniObject<{
587
+ from: z.ZodMiniString<string>;
588
+ to: z.ZodMiniString<string>;
589
+ }, z.core.$strip>>;
590
+ categories: z.ZodMiniArray<z.ZodMiniEnum<{
591
+ copywriter: "copywriter";
592
+ marketing: "marketing";
593
+ proofreader: "proofreader";
594
+ seo: "seo";
595
+ technical_writer: "technical_writer";
596
+ translator: "translator";
597
+ }>>;
598
+ pricePerHour: z.ZodMiniNumber<number>;
599
+ status: z.ZodMiniEnum<{
600
+ active: "active";
601
+ pending: "pending";
602
+ suspended: "suspended";
603
+ }>;
604
+ totalMissions: z.ZodMiniNumber<number>;
605
+ averageRating: z.ZodMiniNumber<number>;
606
+ reviewCount: z.ZodMiniNumber<number>;
607
+ socialLinks: z.ZodMiniOptional<z.ZodMiniObject<{
608
+ github: z.ZodMiniOptional<z.ZodMiniString<string>>;
609
+ linkedin: z.ZodMiniOptional<z.ZodMiniString<string>>;
610
+ portfolio: z.ZodMiniOptional<z.ZodMiniString<string>>;
611
+ }, z.core.$strip>>;
612
+ isHidden: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
613
+ createdAt: z.ZodMiniString<string>;
614
+ updatedAt: z.ZodMiniString<string>;
615
+ }, z.core.$loose>>;
616
+ error: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
617
+ code: z.ZodMiniString<string>;
618
+ title: z.ZodMiniString<string>;
619
+ message: z.ZodMiniString<string>;
620
+ }, z.core.$loose>, z.ZodMiniArray<z.ZodMiniObject<{
621
+ code: z.ZodMiniString<string>;
622
+ title: z.ZodMiniString<string>;
623
+ message: z.ZodMiniString<string>;
624
+ }, z.core.$loose>>]>>;
625
+ }, z.core.$strip>;
626
+ };
627
+ }>;
628
+ readonly uploadCoverPicture: RouteDefinition<"POST", "/me/picture/cover", {
629
+ readonly response: {
630
+ 200: z.ZodMiniObject<{
631
+ success: z.ZodMiniBoolean<boolean>;
632
+ status: z.ZodMiniNumber<number>;
633
+ message: z.ZodMiniOptional<z.ZodMiniString<string>>;
634
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
635
+ data: z.ZodMiniNullable<z.ZodMiniObject<{
636
+ id: z.ZodMiniString<string>;
637
+ userId: z.ZodMiniString<string>;
638
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
639
+ avatar: z.ZodMiniOptional<z.ZodMiniString<string>>;
640
+ bio: z.ZodMiniOptional<z.ZodMiniString<string>>;
641
+ mainPicture: z.ZodMiniOptional<z.ZodMiniString<string>>;
642
+ coverPicture: z.ZodMiniOptional<z.ZodMiniString<string>>;
643
+ languagePairs: z.ZodMiniArray<z.ZodMiniObject<{
644
+ from: z.ZodMiniString<string>;
645
+ to: z.ZodMiniString<string>;
646
+ }, z.core.$strip>>;
647
+ categories: z.ZodMiniArray<z.ZodMiniEnum<{
648
+ copywriter: "copywriter";
649
+ marketing: "marketing";
650
+ proofreader: "proofreader";
651
+ seo: "seo";
652
+ technical_writer: "technical_writer";
653
+ translator: "translator";
654
+ }>>;
655
+ pricePerHour: z.ZodMiniNumber<number>;
656
+ status: z.ZodMiniEnum<{
657
+ active: "active";
658
+ pending: "pending";
659
+ suspended: "suspended";
660
+ }>;
661
+ totalMissions: z.ZodMiniNumber<number>;
662
+ averageRating: z.ZodMiniNumber<number>;
663
+ reviewCount: z.ZodMiniNumber<number>;
664
+ socialLinks: z.ZodMiniOptional<z.ZodMiniObject<{
665
+ github: z.ZodMiniOptional<z.ZodMiniString<string>>;
666
+ linkedin: z.ZodMiniOptional<z.ZodMiniString<string>>;
667
+ portfolio: z.ZodMiniOptional<z.ZodMiniString<string>>;
668
+ }, z.core.$strip>>;
669
+ isHidden: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
670
+ createdAt: z.ZodMiniString<string>;
671
+ updatedAt: z.ZodMiniString<string>;
672
+ }, z.core.$loose>>;
673
+ error: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
674
+ code: z.ZodMiniString<string>;
675
+ title: z.ZodMiniString<string>;
676
+ message: z.ZodMiniString<string>;
677
+ }, z.core.$loose>, z.ZodMiniArray<z.ZodMiniObject<{
678
+ code: z.ZodMiniString<string>;
679
+ title: z.ZodMiniString<string>;
680
+ message: z.ZodMiniString<string>;
681
+ }, z.core.$loose>>]>>;
682
+ }, z.core.$strip>;
683
+ };
684
+ }>;
685
+ readonly estimateMission: RouteDefinition<"POST", "/mission/estimate", {
686
+ readonly body: z.ZodMiniObject<{
687
+ dictionaryIds: z.ZodMiniArray<z.ZodMiniString<string>>;
688
+ sourceLocale: z.ZodMiniOptional<z.ZodMiniString<string>>;
689
+ pricePerHour: z.ZodMiniNumber<number>;
690
+ }, z.core.$strip>;
691
+ readonly response: {
692
+ 200: z.ZodMiniObject<{
693
+ success: z.ZodMiniBoolean<boolean>;
694
+ status: z.ZodMiniNumber<number>;
695
+ message: z.ZodMiniOptional<z.ZodMiniString<string>>;
696
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
697
+ data: z.ZodMiniNullable<z.ZodMiniObject<{
698
+ wordCount: z.ZodMiniNumber<number>;
699
+ estimatedHours: z.ZodMiniNumber<number>;
700
+ totalPrice: z.ZodMiniNumber<number>;
701
+ currency: z.ZodMiniString<string>;
702
+ }, z.core.$strip>>;
703
+ error: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
704
+ code: z.ZodMiniString<string>;
705
+ title: z.ZodMiniString<string>;
706
+ message: z.ZodMiniString<string>;
707
+ }, z.core.$loose>, z.ZodMiniArray<z.ZodMiniObject<{
708
+ code: z.ZodMiniString<string>;
709
+ title: z.ZodMiniString<string>;
710
+ message: z.ZodMiniString<string>;
711
+ }, z.core.$loose>>]>>;
712
+ }, z.core.$strip>;
713
+ };
714
+ }>;
715
+ readonly createMission: RouteDefinition<"POST", "/mission", {
716
+ readonly body: z.ZodMiniObject<{
717
+ reviewerId: z.ZodMiniString<string>;
718
+ dictionaryIds: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
719
+ sourceLocale: z.ZodMiniOptional<z.ZodMiniString<string>>;
720
+ targetLocales: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
721
+ projectId: z.ZodMiniOptional<z.ZodMiniString<string>>;
722
+ notes: z.ZodMiniOptional<z.ZodMiniString<string>>;
723
+ }, z.core.$strip>;
724
+ readonly response: {
725
+ 200: z.ZodMiniObject<{
726
+ success: z.ZodMiniBoolean<boolean>;
727
+ status: z.ZodMiniNumber<number>;
728
+ message: z.ZodMiniOptional<z.ZodMiniString<string>>;
729
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
730
+ data: z.ZodMiniNullable<z.ZodMiniObject<{
731
+ id: z.ZodMiniString<string>;
732
+ reviewerId: z.ZodMiniString<string>;
733
+ clientUserId: z.ZodMiniString<string>;
734
+ projectId: z.ZodMiniOptional<z.ZodMiniString<string>>;
735
+ dictionaryIds: z.ZodMiniArray<z.ZodMiniString<string>>;
736
+ sourceLocale: z.ZodMiniOptional<z.ZodMiniString<string>>;
737
+ targetLocales: z.ZodMiniArray<z.ZodMiniString<string>>;
738
+ wordCount: z.ZodMiniNumber<number>;
739
+ estimatedHours: z.ZodMiniNumber<number>;
740
+ pricePerHour: z.ZodMiniNumber<number>;
741
+ totalPrice: z.ZodMiniNumber<number>;
742
+ currency: z.ZodMiniString<string>;
743
+ status: z.ZodMiniEnum<{
744
+ accepted: "accepted";
745
+ canceled: "canceled";
746
+ client_review: "client_review";
747
+ completed: "completed";
748
+ in_progress: "in_progress";
749
+ pending: "pending";
750
+ reviewer_review: "reviewer_review";
751
+ }>;
752
+ notes: z.ZodMiniOptional<z.ZodMiniString<string>>;
753
+ aiPreGeneratedAt: z.ZodMiniOptional<z.ZodMiniString<string>>;
754
+ completedAt: z.ZodMiniOptional<z.ZodMiniString<string>>;
755
+ canceledAt: z.ZodMiniOptional<z.ZodMiniString<string>>;
756
+ createdAt: z.ZodMiniString<string>;
757
+ updatedAt: z.ZodMiniString<string>;
758
+ }, z.core.$loose>>;
759
+ error: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
760
+ code: z.ZodMiniString<string>;
761
+ title: z.ZodMiniString<string>;
762
+ message: z.ZodMiniString<string>;
763
+ }, z.core.$loose>, z.ZodMiniArray<z.ZodMiniObject<{
764
+ code: z.ZodMiniString<string>;
765
+ title: z.ZodMiniString<string>;
766
+ message: z.ZodMiniString<string>;
767
+ }, z.core.$loose>>]>>;
768
+ }, z.core.$strip>;
769
+ };
770
+ }>;
771
+ readonly getMyMissions: RouteDefinition<"GET", "/mission", {
772
+ readonly querystring: z.ZodMiniObject<{
773
+ page: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>;
774
+ pageSize: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>;
775
+ role: z.ZodMiniOptional<z.ZodMiniEnum<{
776
+ client: "client";
777
+ reviewer: "reviewer";
778
+ }>>;
779
+ }, z.core.$strip>;
780
+ readonly response: {
781
+ 200: z.ZodMiniObject<{
782
+ success: z.ZodMiniBoolean<boolean>;
783
+ status: z.ZodMiniNumber<number>;
784
+ message: z.ZodMiniOptional<z.ZodMiniString<string>>;
785
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
786
+ data: z.ZodMiniNullable<z.ZodMiniArray<z.ZodMiniObject<{
787
+ id: z.ZodMiniString<string>;
788
+ reviewerId: z.ZodMiniString<string>;
789
+ clientUserId: z.ZodMiniString<string>;
790
+ projectId: z.ZodMiniOptional<z.ZodMiniString<string>>;
791
+ dictionaryIds: z.ZodMiniArray<z.ZodMiniString<string>>;
792
+ sourceLocale: z.ZodMiniOptional<z.ZodMiniString<string>>;
793
+ targetLocales: z.ZodMiniArray<z.ZodMiniString<string>>;
794
+ wordCount: z.ZodMiniNumber<number>;
795
+ estimatedHours: z.ZodMiniNumber<number>;
796
+ pricePerHour: z.ZodMiniNumber<number>;
797
+ totalPrice: z.ZodMiniNumber<number>;
798
+ currency: z.ZodMiniString<string>;
799
+ status: z.ZodMiniEnum<{
800
+ accepted: "accepted";
801
+ canceled: "canceled";
802
+ client_review: "client_review";
803
+ completed: "completed";
804
+ in_progress: "in_progress";
805
+ pending: "pending";
806
+ reviewer_review: "reviewer_review";
807
+ }>;
808
+ notes: z.ZodMiniOptional<z.ZodMiniString<string>>;
809
+ aiPreGeneratedAt: z.ZodMiniOptional<z.ZodMiniString<string>>;
810
+ completedAt: z.ZodMiniOptional<z.ZodMiniString<string>>;
811
+ canceledAt: z.ZodMiniOptional<z.ZodMiniString<string>>;
812
+ createdAt: z.ZodMiniString<string>;
813
+ updatedAt: z.ZodMiniString<string>;
814
+ }, z.core.$loose>>>;
815
+ error: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
816
+ code: z.ZodMiniString<string>;
817
+ title: z.ZodMiniString<string>;
818
+ message: z.ZodMiniString<string>;
819
+ }, z.core.$loose>, z.ZodMiniArray<z.ZodMiniObject<{
820
+ code: z.ZodMiniString<string>;
821
+ title: z.ZodMiniString<string>;
822
+ message: z.ZodMiniString<string>;
823
+ }, z.core.$loose>>]>>;
824
+ page: z.ZodMiniNullable<z.ZodMiniNumber<number>>;
825
+ page_size: z.ZodMiniNullable<z.ZodMiniNumber<number>>;
826
+ total_pages: z.ZodMiniNullable<z.ZodMiniNumber<number>>;
827
+ total_items: z.ZodMiniNullable<z.ZodMiniNumber<number>>;
828
+ }, z.core.$strip>;
829
+ };
830
+ }>;
831
+ readonly getMissionById: RouteDefinition<"GET", "/mission/:missionId", {
832
+ readonly params: z.ZodMiniObject<{
833
+ missionId: z.ZodMiniString<string>;
834
+ }, z.core.$strip>;
835
+ readonly response: {
836
+ 200: z.ZodMiniObject<{
837
+ success: z.ZodMiniBoolean<boolean>;
838
+ status: z.ZodMiniNumber<number>;
839
+ message: z.ZodMiniOptional<z.ZodMiniString<string>>;
840
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
841
+ data: z.ZodMiniNullable<z.ZodMiniObject<{
842
+ id: z.ZodMiniString<string>;
843
+ reviewerId: z.ZodMiniString<string>;
844
+ clientUserId: z.ZodMiniString<string>;
845
+ projectId: z.ZodMiniOptional<z.ZodMiniString<string>>;
846
+ dictionaryIds: z.ZodMiniArray<z.ZodMiniString<string>>;
847
+ sourceLocale: z.ZodMiniOptional<z.ZodMiniString<string>>;
848
+ targetLocales: z.ZodMiniArray<z.ZodMiniString<string>>;
849
+ wordCount: z.ZodMiniNumber<number>;
850
+ estimatedHours: z.ZodMiniNumber<number>;
851
+ pricePerHour: z.ZodMiniNumber<number>;
852
+ totalPrice: z.ZodMiniNumber<number>;
853
+ currency: z.ZodMiniString<string>;
854
+ status: z.ZodMiniEnum<{
855
+ accepted: "accepted";
856
+ canceled: "canceled";
857
+ client_review: "client_review";
858
+ completed: "completed";
859
+ in_progress: "in_progress";
860
+ pending: "pending";
861
+ reviewer_review: "reviewer_review";
862
+ }>;
863
+ notes: z.ZodMiniOptional<z.ZodMiniString<string>>;
864
+ aiPreGeneratedAt: z.ZodMiniOptional<z.ZodMiniString<string>>;
865
+ completedAt: z.ZodMiniOptional<z.ZodMiniString<string>>;
866
+ canceledAt: z.ZodMiniOptional<z.ZodMiniString<string>>;
867
+ createdAt: z.ZodMiniString<string>;
868
+ updatedAt: z.ZodMiniString<string>;
869
+ }, z.core.$loose>>;
870
+ error: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
871
+ code: z.ZodMiniString<string>;
872
+ title: z.ZodMiniString<string>;
873
+ message: z.ZodMiniString<string>;
874
+ }, z.core.$loose>, z.ZodMiniArray<z.ZodMiniObject<{
875
+ code: z.ZodMiniString<string>;
876
+ title: z.ZodMiniString<string>;
877
+ message: z.ZodMiniString<string>;
878
+ }, z.core.$loose>>]>>;
879
+ }, z.core.$strip>;
880
+ };
881
+ }>;
882
+ readonly updateMissionStatus: RouteDefinition<"PUT", "/mission/:missionId/status", {
883
+ readonly params: z.ZodMiniObject<{
884
+ missionId: z.ZodMiniString<string>;
885
+ }, z.core.$strip>;
886
+ readonly body: z.ZodMiniObject<{
887
+ status: z.ZodMiniEnum<{
888
+ accepted: "accepted";
889
+ canceled: "canceled";
890
+ client_review: "client_review";
891
+ completed: "completed";
892
+ in_progress: "in_progress";
893
+ pending: "pending";
894
+ reviewer_review: "reviewer_review";
895
+ }>;
896
+ }, z.core.$strip>;
897
+ readonly response: {
898
+ 200: z.ZodMiniObject<{
899
+ success: z.ZodMiniBoolean<boolean>;
900
+ status: z.ZodMiniNumber<number>;
901
+ message: z.ZodMiniOptional<z.ZodMiniString<string>>;
902
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
903
+ data: z.ZodMiniNullable<z.ZodMiniObject<{
904
+ id: z.ZodMiniString<string>;
905
+ reviewerId: z.ZodMiniString<string>;
906
+ clientUserId: z.ZodMiniString<string>;
907
+ projectId: z.ZodMiniOptional<z.ZodMiniString<string>>;
908
+ dictionaryIds: z.ZodMiniArray<z.ZodMiniString<string>>;
909
+ sourceLocale: z.ZodMiniOptional<z.ZodMiniString<string>>;
910
+ targetLocales: z.ZodMiniArray<z.ZodMiniString<string>>;
911
+ wordCount: z.ZodMiniNumber<number>;
912
+ estimatedHours: z.ZodMiniNumber<number>;
913
+ pricePerHour: z.ZodMiniNumber<number>;
914
+ totalPrice: z.ZodMiniNumber<number>;
915
+ currency: z.ZodMiniString<string>;
916
+ status: z.ZodMiniEnum<{
917
+ accepted: "accepted";
918
+ canceled: "canceled";
919
+ client_review: "client_review";
920
+ completed: "completed";
921
+ in_progress: "in_progress";
922
+ pending: "pending";
923
+ reviewer_review: "reviewer_review";
924
+ }>;
925
+ notes: z.ZodMiniOptional<z.ZodMiniString<string>>;
926
+ aiPreGeneratedAt: z.ZodMiniOptional<z.ZodMiniString<string>>;
927
+ completedAt: z.ZodMiniOptional<z.ZodMiniString<string>>;
928
+ canceledAt: z.ZodMiniOptional<z.ZodMiniString<string>>;
929
+ createdAt: z.ZodMiniString<string>;
930
+ updatedAt: z.ZodMiniString<string>;
931
+ }, z.core.$loose>>;
932
+ error: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
933
+ code: z.ZodMiniString<string>;
934
+ title: z.ZodMiniString<string>;
935
+ message: z.ZodMiniString<string>;
936
+ }, z.core.$loose>, z.ZodMiniArray<z.ZodMiniObject<{
937
+ code: z.ZodMiniString<string>;
938
+ title: z.ZodMiniString<string>;
939
+ message: z.ZodMiniString<string>;
940
+ }, z.core.$loose>>]>>;
941
+ }, z.core.$strip>;
942
+ };
943
+ }>;
944
+ readonly submitReview: RouteDefinition<"POST", "/mission/:missionId/review", {
945
+ readonly params: z.ZodMiniObject<{
946
+ missionId: z.ZodMiniString<string>;
947
+ }, z.core.$strip>;
948
+ readonly body: z.ZodMiniObject<{
949
+ rating: z.ZodMiniNumber<number>;
950
+ comment: z.ZodMiniOptional<z.ZodMiniString<string>>;
951
+ }, z.core.$strip>;
952
+ readonly response: {
953
+ 200: z.ZodMiniObject<{
954
+ success: z.ZodMiniBoolean<boolean>;
955
+ status: z.ZodMiniNumber<number>;
956
+ message: z.ZodMiniOptional<z.ZodMiniString<string>>;
957
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
958
+ data: z.ZodMiniNullable<z.ZodMiniObject<{
959
+ id: z.ZodMiniString<string>;
960
+ missionId: z.ZodMiniString<string>;
961
+ reviewerId: z.ZodMiniString<string>;
962
+ rating: z.ZodMiniNumber<number>;
963
+ comment: z.ZodMiniOptional<z.ZodMiniString<string>>;
964
+ createdAt: z.ZodMiniString<string>;
965
+ updatedAt: z.ZodMiniString<string>;
966
+ }, z.core.$loose>>;
967
+ error: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
968
+ code: z.ZodMiniString<string>;
969
+ title: z.ZodMiniString<string>;
970
+ message: z.ZodMiniString<string>;
971
+ }, z.core.$loose>, z.ZodMiniArray<z.ZodMiniObject<{
972
+ code: z.ZodMiniString<string>;
973
+ title: z.ZodMiniString<string>;
974
+ message: z.ZodMiniString<string>;
975
+ }, z.core.$loose>>]>>;
976
+ }, z.core.$strip>;
977
+ };
978
+ }>;
979
+ readonly getChatHistory: RouteDefinition<"GET", "/mission/:missionId/chat/history", {
980
+ readonly params: z.ZodMiniObject<{
981
+ missionId: z.ZodMiniString<string>;
982
+ }, z.core.$strip>;
983
+ readonly response: {
984
+ 200: z.ZodMiniObject<{
985
+ success: z.ZodMiniBoolean<boolean>;
986
+ status: z.ZodMiniNumber<number>;
987
+ message: z.ZodMiniOptional<z.ZodMiniString<string>>;
988
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
989
+ data: z.ZodMiniNullable<z.ZodMiniArray<z.ZodMiniObject<{
990
+ id: z.ZodMiniString<string>;
991
+ missionId: z.ZodMiniString<string>;
992
+ senderId: z.ZodMiniString<string>;
993
+ content: z.ZodMiniString<string>;
994
+ readAt: z.ZodMiniOptional<z.ZodMiniString<string>>;
995
+ createdAt: z.ZodMiniString<string>;
996
+ updatedAt: z.ZodMiniString<string>;
997
+ }, z.core.$loose>>>;
998
+ error: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
999
+ code: z.ZodMiniString<string>;
1000
+ title: z.ZodMiniString<string>;
1001
+ message: z.ZodMiniString<string>;
1002
+ }, z.core.$loose>, z.ZodMiniArray<z.ZodMiniObject<{
1003
+ code: z.ZodMiniString<string>;
1004
+ title: z.ZodMiniString<string>;
1005
+ message: z.ZodMiniString<string>;
1006
+ }, z.core.$loose>>]>>;
1007
+ }, z.core.$strip>;
1008
+ };
1009
+ }>;
1010
+ readonly sendMessage: RouteDefinition<"POST", "/mission/:missionId/chat", {
1011
+ readonly params: z.ZodMiniObject<{
1012
+ missionId: z.ZodMiniString<string>;
1013
+ }, z.core.$strip>;
1014
+ readonly body: z.ZodMiniObject<{
1015
+ content: z.ZodMiniString<string>;
1016
+ }, z.core.$strip>;
1017
+ readonly response: {
1018
+ 200: z.ZodMiniObject<{
1019
+ success: z.ZodMiniBoolean<boolean>;
1020
+ status: z.ZodMiniNumber<number>;
1021
+ message: z.ZodMiniOptional<z.ZodMiniString<string>>;
1022
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
1023
+ data: z.ZodMiniNullable<z.ZodMiniObject<{
1024
+ id: z.ZodMiniString<string>;
1025
+ missionId: z.ZodMiniString<string>;
1026
+ senderId: z.ZodMiniString<string>;
1027
+ content: z.ZodMiniString<string>;
1028
+ readAt: z.ZodMiniOptional<z.ZodMiniString<string>>;
1029
+ createdAt: z.ZodMiniString<string>;
1030
+ updatedAt: z.ZodMiniString<string>;
1031
+ }, z.core.$loose>>;
1032
+ error: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
1033
+ code: z.ZodMiniString<string>;
1034
+ title: z.ZodMiniString<string>;
1035
+ message: z.ZodMiniString<string>;
1036
+ }, z.core.$loose>, z.ZodMiniArray<z.ZodMiniObject<{
1037
+ code: z.ZodMiniString<string>;
1038
+ title: z.ZodMiniString<string>;
1039
+ message: z.ZodMiniString<string>;
1040
+ }, z.core.$loose>>]>>;
1041
+ }, z.core.$strip>;
1042
+ };
1043
+ }>;
1044
+ readonly chatSSE: RouteDefinition<"GET", "/mission/:missionId/chat/stream", {
1045
+ readonly params: z.ZodMiniObject<{
1046
+ missionId: z.ZodMiniString<string>;
1047
+ }, z.core.$strip>;
1048
+ }>;
1049
+ readonly createPaymentIntent: RouteDefinition<"POST", "/mission/:missionId/payment/intent", {
1050
+ readonly params: z.ZodMiniObject<{
1051
+ missionId: z.ZodMiniString<string>;
1052
+ }, z.core.$strip>;
1053
+ }>;
1054
+ readonly confirmPayment: RouteDefinition<"POST", "/mission/:missionId/payment/confirm", {
1055
+ readonly params: z.ZodMiniObject<{
1056
+ missionId: z.ZodMiniString<string>;
1057
+ }, z.core.$strip>;
1058
+ }>;
1059
+ readonly requestPayout: RouteDefinition<"POST", "/payout", {}>;
1060
+ readonly contactReviewer: RouteDefinition<"POST", "/:reviewerId/contact", {
1061
+ readonly params: z.ZodMiniObject<{
1062
+ reviewerId: z.ZodMiniString<string>;
1063
+ }, z.core.$strip>;
1064
+ readonly body: z.ZodMiniObject<{
1065
+ message: z.ZodMiniString<string>;
1066
+ }, z.core.$strip>;
1067
+ readonly response: {
1068
+ 200: z.ZodMiniObject<{
1069
+ success: z.ZodMiniBoolean<boolean>;
1070
+ status: z.ZodMiniNumber<number>;
1071
+ message: z.ZodMiniOptional<z.ZodMiniString<string>>;
1072
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
1073
+ data: z.ZodMiniNullable<z.ZodMiniUnknown>;
1074
+ error: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
1075
+ code: z.ZodMiniString<string>;
1076
+ title: z.ZodMiniString<string>;
1077
+ message: z.ZodMiniString<string>;
1078
+ }, z.core.$loose>, z.ZodMiniArray<z.ZodMiniObject<{
1079
+ code: z.ZodMiniString<string>;
1080
+ title: z.ZodMiniString<string>;
1081
+ message: z.ZodMiniString<string>;
1082
+ }, z.core.$loose>>]>>;
1083
+ }, z.core.$strip>;
1084
+ };
1085
+ }>;
1086
+ readonly getAdminReviewers: RouteDefinition<"GET", "/admin/reviewers", {
1087
+ readonly querystring: z.ZodMiniObject<{
1088
+ page: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>;
1089
+ pageSize: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniString<string>, z.ZodMiniNumber<number>]>>;
1090
+ status: z.ZodMiniOptional<z.ZodMiniString<string>>;
1091
+ }, z.core.$strip>;
1092
+ readonly response: {
1093
+ 200: z.ZodMiniObject<{
1094
+ success: z.ZodMiniBoolean<boolean>;
1095
+ status: z.ZodMiniNumber<number>;
1096
+ message: z.ZodMiniOptional<z.ZodMiniString<string>>;
1097
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
1098
+ data: z.ZodMiniNullable<z.ZodMiniArray<z.ZodMiniObject<{
1099
+ id: z.ZodMiniString<string>;
1100
+ userId: z.ZodMiniString<string>;
1101
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
1102
+ avatar: z.ZodMiniOptional<z.ZodMiniString<string>>;
1103
+ bio: z.ZodMiniOptional<z.ZodMiniString<string>>;
1104
+ mainPicture: z.ZodMiniOptional<z.ZodMiniString<string>>;
1105
+ coverPicture: z.ZodMiniOptional<z.ZodMiniString<string>>;
1106
+ languagePairs: z.ZodMiniArray<z.ZodMiniObject<{
1107
+ from: z.ZodMiniString<string>;
1108
+ to: z.ZodMiniString<string>;
1109
+ }, z.core.$strip>>;
1110
+ categories: z.ZodMiniArray<z.ZodMiniEnum<{
1111
+ copywriter: "copywriter";
1112
+ marketing: "marketing";
1113
+ proofreader: "proofreader";
1114
+ seo: "seo";
1115
+ technical_writer: "technical_writer";
1116
+ translator: "translator";
1117
+ }>>;
1118
+ pricePerHour: z.ZodMiniNumber<number>;
1119
+ status: z.ZodMiniEnum<{
1120
+ active: "active";
1121
+ pending: "pending";
1122
+ suspended: "suspended";
1123
+ }>;
1124
+ totalMissions: z.ZodMiniNumber<number>;
1125
+ averageRating: z.ZodMiniNumber<number>;
1126
+ reviewCount: z.ZodMiniNumber<number>;
1127
+ socialLinks: z.ZodMiniOptional<z.ZodMiniObject<{
1128
+ github: z.ZodMiniOptional<z.ZodMiniString<string>>;
1129
+ linkedin: z.ZodMiniOptional<z.ZodMiniString<string>>;
1130
+ portfolio: z.ZodMiniOptional<z.ZodMiniString<string>>;
1131
+ }, z.core.$strip>>;
1132
+ isHidden: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1133
+ createdAt: z.ZodMiniString<string>;
1134
+ updatedAt: z.ZodMiniString<string>;
1135
+ }, z.core.$loose>>>;
1136
+ error: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
1137
+ code: z.ZodMiniString<string>;
1138
+ title: z.ZodMiniString<string>;
1139
+ message: z.ZodMiniString<string>;
1140
+ }, z.core.$loose>, z.ZodMiniArray<z.ZodMiniObject<{
1141
+ code: z.ZodMiniString<string>;
1142
+ title: z.ZodMiniString<string>;
1143
+ message: z.ZodMiniString<string>;
1144
+ }, z.core.$loose>>]>>;
1145
+ page: z.ZodMiniNullable<z.ZodMiniNumber<number>>;
1146
+ page_size: z.ZodMiniNullable<z.ZodMiniNumber<number>>;
1147
+ total_pages: z.ZodMiniNullable<z.ZodMiniNumber<number>>;
1148
+ total_items: z.ZodMiniNullable<z.ZodMiniNumber<number>>;
1149
+ }, z.core.$strip>;
1150
+ };
1151
+ }>;
1152
+ readonly validateReviewerProfile: RouteDefinition<"PUT", "/:reviewerId/validate", {
1153
+ readonly params: z.ZodMiniObject<{
1154
+ reviewerId: z.ZodMiniString<string>;
1155
+ }, z.core.$strip>;
1156
+ readonly response: {
1157
+ 200: z.ZodMiniObject<{
1158
+ success: z.ZodMiniBoolean<boolean>;
1159
+ status: z.ZodMiniNumber<number>;
1160
+ message: z.ZodMiniOptional<z.ZodMiniString<string>>;
1161
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
1162
+ data: z.ZodMiniNullable<z.ZodMiniObject<{
1163
+ id: z.ZodMiniString<string>;
1164
+ userId: z.ZodMiniString<string>;
1165
+ name: z.ZodMiniOptional<z.ZodMiniString<string>>;
1166
+ avatar: z.ZodMiniOptional<z.ZodMiniString<string>>;
1167
+ bio: z.ZodMiniOptional<z.ZodMiniString<string>>;
1168
+ mainPicture: z.ZodMiniOptional<z.ZodMiniString<string>>;
1169
+ coverPicture: z.ZodMiniOptional<z.ZodMiniString<string>>;
1170
+ languagePairs: z.ZodMiniArray<z.ZodMiniObject<{
1171
+ from: z.ZodMiniString<string>;
1172
+ to: z.ZodMiniString<string>;
1173
+ }, z.core.$strip>>;
1174
+ categories: z.ZodMiniArray<z.ZodMiniEnum<{
1175
+ copywriter: "copywriter";
1176
+ marketing: "marketing";
1177
+ proofreader: "proofreader";
1178
+ seo: "seo";
1179
+ technical_writer: "technical_writer";
1180
+ translator: "translator";
1181
+ }>>;
1182
+ pricePerHour: z.ZodMiniNumber<number>;
1183
+ status: z.ZodMiniEnum<{
1184
+ active: "active";
1185
+ pending: "pending";
1186
+ suspended: "suspended";
1187
+ }>;
1188
+ totalMissions: z.ZodMiniNumber<number>;
1189
+ averageRating: z.ZodMiniNumber<number>;
1190
+ reviewCount: z.ZodMiniNumber<number>;
1191
+ socialLinks: z.ZodMiniOptional<z.ZodMiniObject<{
1192
+ github: z.ZodMiniOptional<z.ZodMiniString<string>>;
1193
+ linkedin: z.ZodMiniOptional<z.ZodMiniString<string>>;
1194
+ portfolio: z.ZodMiniOptional<z.ZodMiniString<string>>;
1195
+ }, z.core.$strip>>;
1196
+ isHidden: z.ZodMiniOptional<z.ZodMiniBoolean<boolean>>;
1197
+ createdAt: z.ZodMiniString<string>;
1198
+ updatedAt: z.ZodMiniString<string>;
1199
+ }, z.core.$loose>>;
1200
+ error: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniObject<{
1201
+ code: z.ZodMiniString<string>;
1202
+ title: z.ZodMiniString<string>;
1203
+ message: z.ZodMiniString<string>;
1204
+ }, z.core.$loose>, z.ZodMiniArray<z.ZodMiniObject<{
1205
+ code: z.ZodMiniString<string>;
1206
+ title: z.ZodMiniString<string>;
1207
+ message: z.ZodMiniString<string>;
1208
+ }, z.core.$loose>>]>>;
1209
+ }, z.core.$strip>;
1210
+ };
1211
+ }>;
1212
+ }>;
1213
+ /** Route definitions of the `/api/reviewer` group, by name. */
1214
+ export type ReviewerRoutes = (typeof reviewerContract)['routes'];
1215
+ export type ReviewerStatus = z.output<typeof reviewerStatusSchema>;
1216
+ export type ReviewerCategory = z.output<typeof reviewerCategorySchema>;
1217
+ export type MissionStatus = z.output<typeof missionStatusSchema>;
1218
+ export type ReviewerProfileAPI = z.output<typeof reviewerProfileSchema>;
1219
+ export type TranslationMissionAPI = z.output<typeof translationMissionSchema>;
1220
+ export type ReviewerReviewAPI = z.output<typeof reviewerReviewSchema>;
1221
+ export type ReviewerMessageAPI = z.output<typeof reviewerMessageSchema>;
1222
+ export type MissionEstimate = z.output<typeof missionEstimateSchema>;
1223
+ export type PriceDistributionData = z.output<typeof priceDistributionSchema>;
1224
+ export type PriceDistributionBucket = PriceDistributionData['buckets'][number];
1225
+ type MarketplaceNumericFilter = 'page' | 'pageSize' | 'minRating' | 'minPricePerHour' | 'maxPricePerHour';
1226
+ /** Marketplace query as built by clients (numbers are serialized). */
1227
+ export type GetMarketplaceQuery = Omit<RouteQuerystring<ReviewerRoutes['getMarketplace']>, MarketplaceNumericFilter> & { [Filter in MarketplaceNumericFilter]?: number; };
1228
+ export type RegisterReviewerBody = RouteBodyInput<ReviewerRoutes['registerAsReviewer']>;
1229
+ export type UpdateReviewerBody = RouteBodyInput<ReviewerRoutes['updateReviewerProfile']>;
1230
+ export type UploadReviewerPictureResult = ResponseData<ReviewerProfileAPI>;
1231
+ export type SubmitReviewBody = RouteBodyInput<ReviewerRoutes['submitReview']>;
1232
+ export type EstimateMissionBody = RouteBodyInput<ReviewerRoutes['estimateMission']>;
1233
+ export type CreateMissionBody = RouteBodyInput<ReviewerRoutes['createMission']>;
1234
+ export type UpdateMissionStatusBody = RouteBodyInput<ReviewerRoutes['updateMissionStatus']>;
1235
+ export type SendMessageBody = RouteBodyInput<ReviewerRoutes['sendMessage']>;
1236
+ export type ContactReviewerBody = RouteBodyInput<ReviewerRoutes['contactReviewer']>;
1237
+ export type GetMarketplaceResult = PaginatedResponse<ReviewerProfileAPI>;
1238
+ //#endregion
1239
+ //# sourceMappingURL=reviewer.d.ts.map