@trpc/server 10.0.0-alpha.8 → 10.0.0-proxy-alpha.53

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 (355) hide show
  1. package/README.md +79 -1
  2. package/adapters/aws-lambda/dist/trpc-server-adapters-aws-lambda.cjs.d.ts +1 -0
  3. package/adapters/aws-lambda/dist/trpc-server-adapters-aws-lambda.cjs.dev.js +190 -0
  4. package/adapters/aws-lambda/dist/trpc-server-adapters-aws-lambda.cjs.js +7 -0
  5. package/adapters/aws-lambda/dist/trpc-server-adapters-aws-lambda.cjs.prod.js +190 -0
  6. package/adapters/aws-lambda/dist/trpc-server-adapters-aws-lambda.esm.js +186 -0
  7. package/adapters/aws-lambda/index.d.ts +1 -0
  8. package/adapters/aws-lambda/index.js +1 -0
  9. package/adapters/express/dist/trpc-server-adapters-express.cjs.dev.js +7 -7
  10. package/adapters/express/dist/trpc-server-adapters-express.cjs.prod.js +7 -7
  11. package/adapters/express/dist/trpc-server-adapters-express.esm.js +7 -7
  12. package/adapters/fastify/dist/trpc-server-adapters-fastify.cjs.dev.js +18 -11
  13. package/adapters/fastify/dist/trpc-server-adapters-fastify.cjs.prod.js +18 -11
  14. package/adapters/fastify/dist/trpc-server-adapters-fastify.esm.js +18 -11
  15. package/adapters/fastify/index.d.ts +1 -0
  16. package/adapters/fastify/index.js +1 -0
  17. package/adapters/fetch/index.d.ts +1 -0
  18. package/adapters/fetch/index.js +1 -0
  19. package/adapters/lambda/dist/trpc-server-adapters-lambda.cjs.d.ts +1 -0
  20. package/adapters/lambda/dist/trpc-server-adapters-lambda.cjs.dev.js +25 -0
  21. package/adapters/lambda/dist/trpc-server-adapters-lambda.cjs.js +7 -0
  22. package/adapters/lambda/dist/trpc-server-adapters-lambda.cjs.prod.js +25 -0
  23. package/adapters/lambda/dist/trpc-server-adapters-lambda.esm.js +21 -0
  24. package/adapters/next/dist/trpc-server-adapters-next.cjs.dev.js +4 -4
  25. package/adapters/next/dist/trpc-server-adapters-next.cjs.prod.js +4 -4
  26. package/adapters/next/dist/trpc-server-adapters-next.esm.js +4 -4
  27. package/adapters/node-http/dist/trpc-server-adapters-node-http.cjs.dev.js +4 -4
  28. package/adapters/node-http/dist/trpc-server-adapters-node-http.cjs.prod.js +4 -4
  29. package/adapters/node-http/dist/trpc-server-adapters-node-http.esm.js +4 -4
  30. package/adapters/node-http/index.js +1 -1
  31. package/adapters/standalone/dist/trpc-server-adapters-standalone.cjs.dev.js +5 -5
  32. package/adapters/standalone/dist/trpc-server-adapters-standalone.cjs.prod.js +5 -5
  33. package/adapters/standalone/dist/trpc-server-adapters-standalone.esm.js +5 -5
  34. package/adapters/ws/dist/trpc-server-adapters-ws.cjs.dev.js +24 -7
  35. package/adapters/ws/dist/trpc-server-adapters-ws.cjs.prod.js +24 -7
  36. package/adapters/ws/dist/trpc-server-adapters-ws.esm.js +24 -7
  37. package/dist/TRPCError-bcb38a84.js +61 -0
  38. package/dist/TRPCError-e6e632a5.mjs +57 -0
  39. package/dist/adapters/aws-lambda/index.d.ts +14 -0
  40. package/dist/adapters/aws-lambda/index.d.ts.map +1 -0
  41. package/dist/adapters/aws-lambda/index.js +153 -0
  42. package/dist/adapters/aws-lambda/index.mjs +149 -0
  43. package/dist/adapters/aws-lambda/utils.d.ts +35 -0
  44. package/dist/adapters/aws-lambda/utils.d.ts.map +1 -0
  45. package/dist/adapters/express.d.ts +1 -1
  46. package/dist/adapters/express.d.ts.map +1 -1
  47. package/dist/adapters/express.js +14 -13
  48. package/dist/adapters/express.mjs +14 -13
  49. package/dist/adapters/fastify/fastifyRequestHandler.d.ts +2 -2
  50. package/dist/adapters/fastify/fastifyRequestHandler.d.ts.map +1 -1
  51. package/dist/adapters/fastify/fastifyTRPCPlugin.d.ts +2 -2
  52. package/dist/adapters/fastify/fastifyTRPCPlugin.d.ts.map +1 -1
  53. package/dist/adapters/fastify/index.d.ts.map +1 -1
  54. package/dist/adapters/fastify/index.js +87 -0
  55. package/dist/adapters/fastify/index.mjs +82 -0
  56. package/dist/adapters/fetch/fetchRequestHandler.d.ts +8 -0
  57. package/dist/adapters/fetch/fetchRequestHandler.d.ts.map +1 -0
  58. package/dist/adapters/fetch/index.d.ts +3 -0
  59. package/dist/adapters/fetch/index.d.ts.map +1 -0
  60. package/dist/adapters/fetch/index.js +57 -0
  61. package/dist/adapters/fetch/index.mjs +53 -0
  62. package/dist/adapters/fetch/types.d.ts +21 -0
  63. package/dist/adapters/fetch/types.d.ts.map +1 -0
  64. package/dist/adapters/lambda/index.d.ts +12 -0
  65. package/dist/adapters/lambda/index.d.ts.map +1 -0
  66. package/dist/adapters/next.d.ts +2 -2
  67. package/dist/adapters/next.d.ts.map +1 -1
  68. package/dist/adapters/next.js +42 -46
  69. package/dist/adapters/next.mjs +42 -46
  70. package/dist/adapters/node-http/index.d.ts.map +1 -1
  71. package/dist/adapters/node-http/index.js +5 -4
  72. package/dist/adapters/node-http/index.mjs +5 -4
  73. package/dist/adapters/node-http/internals/getPostBody.d.ts +1 -1
  74. package/dist/adapters/node-http/internals/getPostBody.d.ts.map +1 -1
  75. package/dist/adapters/node-http/nodeHTTPRequestHandler.d.ts +2 -2
  76. package/dist/adapters/node-http/nodeHTTPRequestHandler.d.ts.map +1 -1
  77. package/dist/adapters/node-http/types.d.ts +11 -9
  78. package/dist/adapters/node-http/types.d.ts.map +1 -1
  79. package/dist/adapters/standalone.d.ts +2 -2
  80. package/dist/adapters/standalone.d.ts.map +1 -1
  81. package/dist/adapters/standalone.js +30 -28
  82. package/dist/adapters/standalone.mjs +30 -27
  83. package/dist/adapters/ws.d.ts +8 -6
  84. package/dist/adapters/ws.d.ts.map +1 -1
  85. package/dist/adapters/ws.js +284 -317
  86. package/dist/adapters/ws.mjs +284 -317
  87. package/dist/assertNotBrowser.d.ts.map +1 -1
  88. package/dist/codes-1c24d919.js +47 -0
  89. package/dist/codes-aaa7d554.mjs +44 -0
  90. package/dist/core/index.d.ts +6 -0
  91. package/dist/core/index.d.ts.map +1 -0
  92. package/dist/core/initTRPC.d.ts +95 -0
  93. package/dist/core/initTRPC.d.ts.map +1 -0
  94. package/dist/core/internals/__generated__/mergeRoutersGeneric.d.ts +302 -0
  95. package/dist/core/internals/__generated__/mergeRoutersGeneric.d.ts.map +1 -0
  96. package/dist/core/internals/config.d.ts +36 -0
  97. package/dist/core/internals/config.d.ts.map +1 -0
  98. package/dist/core/internals/getParseFn.d.ts +9 -0
  99. package/dist/core/internals/getParseFn.d.ts.map +1 -0
  100. package/dist/core/internals/mergeRouters.d.ts +3 -0
  101. package/dist/core/internals/mergeRouters.d.ts.map +1 -0
  102. package/dist/core/internals/mergeWithoutOverrides.d.ts +5 -0
  103. package/dist/core/internals/mergeWithoutOverrides.d.ts.map +1 -0
  104. package/dist/core/internals/omitPrototype.d.ts +6 -0
  105. package/dist/core/internals/omitPrototype.d.ts.map +1 -0
  106. package/dist/core/internals/prefixObjectKeys.d.ts +2 -0
  107. package/dist/core/internals/prefixObjectKeys.d.ts.map +1 -0
  108. package/dist/core/internals/procedureBuilder.d.ts +124 -0
  109. package/dist/core/internals/procedureBuilder.d.ts.map +1 -0
  110. package/dist/core/internals/utils.d.ts +44 -0
  111. package/dist/core/internals/utils.d.ts.map +1 -0
  112. package/dist/core/middleware.d.ts +87 -0
  113. package/dist/core/middleware.d.ts.map +1 -0
  114. package/dist/core/parser.d.ts +25 -0
  115. package/dist/core/parser.d.ts.map +1 -0
  116. package/dist/core/procedure.d.ts +89 -0
  117. package/dist/core/procedure.d.ts.map +1 -0
  118. package/dist/core/router.d.ts +136 -0
  119. package/dist/core/router.d.ts.map +1 -0
  120. package/dist/core/types.d.ts +19 -0
  121. package/dist/core/types.d.ts.map +1 -0
  122. package/dist/{internals → deprecated/internals}/callProcedure.d.ts +5 -2
  123. package/dist/deprecated/internals/callProcedure.d.ts.map +1 -0
  124. package/dist/{internals → deprecated/internals}/middlewares.d.ts +21 -3
  125. package/dist/deprecated/internals/middlewares.d.ts.map +1 -0
  126. package/dist/deprecated/internals/procedure.d.ts +96 -0
  127. package/dist/deprecated/internals/procedure.d.ts.map +1 -0
  128. package/dist/deprecated/interop.d.ts +61 -0
  129. package/dist/deprecated/interop.d.ts.map +1 -0
  130. package/dist/deprecated/router.d.ts +194 -0
  131. package/dist/deprecated/router.d.ts.map +1 -0
  132. package/dist/error/TRPCError.d.ts +11 -0
  133. package/dist/error/TRPCError.d.ts.map +1 -0
  134. package/dist/error/formatter.d.ts +33 -0
  135. package/dist/error/formatter.d.ts.map +1 -0
  136. package/dist/{internals/errors.d.ts → error/utils.d.ts} +3 -2
  137. package/dist/error/utils.d.ts.map +1 -0
  138. package/dist/http/index.d.ts +1 -1
  139. package/dist/http/index.d.ts.map +1 -1
  140. package/dist/http/internals/getHTTPStatusCode.d.ts +2 -1
  141. package/dist/http/internals/getHTTPStatusCode.d.ts.map +1 -1
  142. package/dist/http/internals/types.d.ts +11 -8
  143. package/dist/http/internals/types.d.ts.map +1 -1
  144. package/dist/http/resolveHTTPResponse.d.ts +4 -4
  145. package/dist/http/resolveHTTPResponse.d.ts.map +1 -1
  146. package/dist/http/{ResponseMeta.d.ts → types.d.ts} +1 -1
  147. package/dist/http/types.d.ts.map +1 -0
  148. package/dist/index-47817162.mjs +26 -0
  149. package/dist/index-9d687d33.js +28 -0
  150. package/dist/index.d.ts +4 -5
  151. package/dist/index.d.ts.map +1 -1
  152. package/dist/index.js +78 -516
  153. package/dist/index.mjs +71 -508
  154. package/dist/internals/invert.d.ts.map +1 -1
  155. package/dist/internals/transformTRPCResponse.d.ts +5 -3
  156. package/dist/internals/transformTRPCResponse.d.ts.map +1 -1
  157. package/dist/internals/types.d.ts +23 -0
  158. package/dist/internals/types.d.ts.map +1 -0
  159. package/dist/internals.d.ts +11 -0
  160. package/dist/internals.d.ts.map +1 -0
  161. package/dist/nodeHTTPRequestHandler-2c467c02.mjs +80 -0
  162. package/dist/nodeHTTPRequestHandler-6609461a.js +82 -0
  163. package/dist/observable/index.d.ts +5 -0
  164. package/dist/observable/index.d.ts.map +1 -0
  165. package/dist/observable/index.js +157 -0
  166. package/dist/observable/index.mjs +148 -0
  167. package/dist/observable/internals/identity.d.ts +2 -0
  168. package/dist/observable/internals/identity.d.ts.map +1 -0
  169. package/dist/observable/internals/observableToPromise.d.ts +10 -0
  170. package/dist/observable/internals/observableToPromise.d.ts.map +1 -0
  171. package/dist/observable/internals/pipe.d.ts +4 -0
  172. package/dist/observable/internals/pipe.d.ts.map +1 -0
  173. package/dist/observable/observable.d.ts +5 -0
  174. package/dist/observable/observable.d.ts.map +1 -0
  175. package/dist/observable/operators/index.d.ts +4 -0
  176. package/dist/observable/operators/index.d.ts.map +1 -0
  177. package/dist/observable/operators/map.d.ts +3 -0
  178. package/dist/observable/operators/map.d.ts.map +1 -0
  179. package/dist/observable/operators/share.d.ts +6 -0
  180. package/dist/observable/operators/share.d.ts.map +1 -0
  181. package/dist/observable/operators/tap.d.ts +3 -0
  182. package/dist/observable/operators/tap.d.ts.map +1 -0
  183. package/dist/observable/types.d.ts +29 -0
  184. package/dist/observable/types.d.ts.map +1 -0
  185. package/dist/observable-b651bf11.js +84 -0
  186. package/dist/observable-e129ac9d.mjs +81 -0
  187. package/dist/resolveHTTPResponse-11d52bd0.mjs +255 -0
  188. package/dist/resolveHTTPResponse-29d4b64a.js +259 -0
  189. package/dist/router-3ee4babe.js +903 -0
  190. package/dist/router-a2a75de3.mjs +893 -0
  191. package/dist/rpc/codes.d.ts +2 -0
  192. package/dist/rpc/codes.d.ts.map +1 -1
  193. package/dist/rpc/envelopes.d.ts +64 -41
  194. package/dist/rpc/envelopes.d.ts.map +1 -1
  195. package/dist/rpc/index.d.ts.map +1 -1
  196. package/dist/rpc/index.js +1 -1
  197. package/dist/rpc/index.mjs +1 -1
  198. package/dist/rpc/internals/invert.d.ts +18 -0
  199. package/dist/rpc/internals/invert.d.ts.map +1 -0
  200. package/dist/shared/createProxy/index.d.ts +12 -0
  201. package/dist/shared/createProxy/index.d.ts.map +1 -0
  202. package/dist/shared/index.d.ts +2 -0
  203. package/dist/shared/index.d.ts.map +1 -0
  204. package/dist/shared/index.js +9 -0
  205. package/dist/shared/index.mjs +1 -0
  206. package/dist/subscription.d.ts +3 -52
  207. package/dist/subscription.d.ts.map +1 -1
  208. package/dist/subscription.js +34 -0
  209. package/dist/subscription.mjs +30 -0
  210. package/dist/transformTRPCResponse-11ac69cc.js +27 -0
  211. package/dist/transformTRPCResponse-c8138d5f.mjs +25 -0
  212. package/dist/transformer.d.ts +14 -0
  213. package/dist/transformer.d.ts.map +1 -1
  214. package/dist/types.d.ts +37 -10
  215. package/dist/types.d.ts.map +1 -1
  216. package/observable/index.d.ts +1 -0
  217. package/observable/index.js +1 -0
  218. package/package.json +53 -25
  219. package/rpc/dist/trpc-server-rpc.cjs.dev.js +1 -1
  220. package/rpc/dist/trpc-server-rpc.cjs.prod.js +1 -1
  221. package/rpc/dist/trpc-server-rpc.esm.js +1 -1
  222. package/rpc/index.js +1 -1
  223. package/shared/index.d.ts +1 -0
  224. package/shared/index.js +1 -0
  225. package/src/adapters/aws-lambda/index.ts +173 -0
  226. package/src/adapters/aws-lambda/utils.ts +92 -0
  227. package/src/adapters/express.ts +4 -4
  228. package/src/adapters/fastify/fastifyRequestHandler.ts +6 -8
  229. package/src/adapters/fastify/fastifyTRPCPlugin.ts +17 -9
  230. package/src/adapters/fetch/fetchRequestHandler.ts +61 -0
  231. package/src/adapters/fetch/index.ts +2 -0
  232. package/src/adapters/fetch/types.ts +28 -0
  233. package/src/adapters/lambda/index.ts +18 -0
  234. package/src/adapters/next.ts +10 -8
  235. package/src/adapters/node-http/internals/getPostBody.test.ts +2 -1
  236. package/src/adapters/node-http/internals/getPostBody.ts +1 -1
  237. package/src/adapters/node-http/nodeHTTPRequestHandler.ts +7 -7
  238. package/src/adapters/node-http/types.ts +11 -9
  239. package/src/adapters/standalone.ts +12 -4
  240. package/src/adapters/ws.ts +150 -91
  241. package/src/assertNotBrowser.ts +1 -0
  242. package/src/core/index.ts +15 -0
  243. package/src/core/initTRPC.ts +94 -0
  244. package/src/core/internals/__generated__/mergeRoutersGeneric.ts +406 -0
  245. package/src/core/internals/config.ts +43 -0
  246. package/src/core/internals/getParseFn.ts +47 -0
  247. package/src/core/internals/mergeRouters.ts +45 -0
  248. package/src/core/internals/mergeWithoutOverrides.ts +19 -0
  249. package/src/core/internals/omitPrototype.ts +9 -0
  250. package/src/core/internals/prefixObjectKeys.ts +9 -0
  251. package/src/core/internals/procedureBuilder.ts +430 -0
  252. package/src/core/internals/utils.ts +64 -0
  253. package/src/core/middleware.ts +96 -0
  254. package/src/core/parser.ts +45 -0
  255. package/src/core/procedure.ts +121 -0
  256. package/src/core/router.ts +351 -0
  257. package/src/core/types.ts +58 -0
  258. package/src/{internals → deprecated/internals}/callProcedure.ts +9 -3
  259. package/src/{internals → deprecated/internals}/middlewares.ts +23 -3
  260. package/src/deprecated/internals/procedure.ts +415 -0
  261. package/src/deprecated/interop.ts +272 -0
  262. package/src/{router.ts → deprecated/router.ts} +221 -108
  263. package/src/{TRPCError.ts → error/TRPCError.ts} +6 -14
  264. package/src/error/formatter.ts +51 -0
  265. package/src/{internals/errors.ts → error/utils.ts} +24 -5
  266. package/src/http/index.ts +1 -1
  267. package/src/http/internals/getHTTPStatusCode.ts +3 -2
  268. package/src/http/internals/types.ts +11 -14
  269. package/src/http/resolveHTTPResponse.ts +34 -39
  270. package/src/http/{ResponseMeta.ts → types.ts} +0 -0
  271. package/src/index.ts +4 -7
  272. package/src/internals/transformTRPCResponse.ts +21 -16
  273. package/src/internals/types.ts +24 -0
  274. package/src/internals.ts +14 -0
  275. package/src/observable/index.ts +4 -0
  276. package/src/observable/internals/identity.ts +3 -0
  277. package/src/observable/internals/observableToPromise.ts +49 -0
  278. package/src/observable/internals/pipe.ts +23 -0
  279. package/src/observable/observable.test.ts +101 -0
  280. package/src/observable/observable.ts +78 -0
  281. package/src/observable/operators/index.ts +3 -0
  282. package/src/observable/operators/map.test.ts +92 -0
  283. package/src/observable/operators/map.ts +25 -0
  284. package/src/observable/operators/share.test.ts +60 -0
  285. package/src/observable/operators/share.ts +67 -0
  286. package/src/observable/operators/tap.ts +26 -0
  287. package/src/observable/types.ts +69 -0
  288. package/src/rpc/codes.ts +2 -1
  289. package/src/rpc/envelopes.ts +94 -68
  290. package/src/rpc/internals/invert.ts +27 -0
  291. package/src/shared/createProxy/index.ts +38 -0
  292. package/src/shared/index.ts +1 -0
  293. package/src/subscription.ts +7 -125
  294. package/src/transformer.ts +28 -0
  295. package/src/types.ts +45 -15
  296. package/subscription/index.d.ts +1 -0
  297. package/subscription/index.js +1 -0
  298. package/adapters/fastify/package.json +0 -4
  299. package/dist/TRPCError.d.ts +0 -19
  300. package/dist/TRPCError.d.ts.map +0 -1
  301. package/dist/adapters/express.ts.js +0 -1
  302. package/dist/adapters/next.ts.js +0 -1
  303. package/dist/adapters/node-http/index.ts.js +0 -1
  304. package/dist/adapters/standalone.ts.js +0 -1
  305. package/dist/adapters/ws.ts.js +0 -1
  306. package/dist/codes-7a3d4f65.mjs +0 -56
  307. package/dist/codes-7f46544e.js +0 -60
  308. package/dist/deprecated/LegacyRouter.d.ts +0 -3
  309. package/dist/deprecated/LegacyRouter.d.ts.map +0 -1
  310. package/dist/deprecated/createHttpServer.d.ts +0 -19
  311. package/dist/deprecated/createHttpServer.d.ts.map +0 -1
  312. package/dist/deprecated/requestHandler.d.ts +0 -15
  313. package/dist/deprecated/requestHandler.d.ts.map +0 -1
  314. package/dist/http/ResponseMeta.d.ts.map +0 -1
  315. package/dist/index.ts.js +0 -1
  316. package/dist/internals/BaseHandlerOptions.d.ts +0 -13
  317. package/dist/internals/BaseHandlerOptions.d.ts.map +0 -1
  318. package/dist/internals/OnErrorFunction.d.ts +0 -11
  319. package/dist/internals/OnErrorFunction.d.ts.map +0 -1
  320. package/dist/internals/callProcedure.d.ts.map +0 -1
  321. package/dist/internals/errors.d.ts.map +0 -1
  322. package/dist/internals/middlewares.d.ts.map +0 -1
  323. package/dist/internals/procedure.d.ts +0 -74
  324. package/dist/internals/procedure.d.ts.map +0 -1
  325. package/dist/internals/wrapCallSafe.d.ts +0 -16
  326. package/dist/internals/wrapCallSafe.d.ts.map +0 -1
  327. package/dist/nodeHTTPRequestHandler-10e6d2f9.mjs +0 -394
  328. package/dist/nodeHTTPRequestHandler-d7c307d3.js +0 -399
  329. package/dist/router.d.ts +0 -176
  330. package/dist/router.d.ts.map +0 -1
  331. package/dist/rpc/index.ts.js +0 -1
  332. package/dist/subscription-5b7e1eba.js +0 -136
  333. package/dist/subscription-e1d42e69.mjs +0 -133
  334. package/dist/transformTRPCResponse-76e0c91e.mjs +0 -109
  335. package/dist/transformTRPCResponse-bd24f548.js +0 -114
  336. package/dist/ws/index.d.ts +0 -7
  337. package/dist/ws/index.d.ts.map +0 -1
  338. package/dist/ws/index.js +0 -15
  339. package/dist/ws/index.mjs +0 -11
  340. package/dist/ws/index.ts.js +0 -1
  341. package/src/deprecated/LegacyRouter.ts +0 -3
  342. package/src/deprecated/createHttpServer.ts +0 -29
  343. package/src/deprecated/requestHandler.ts +0 -26
  344. package/src/internals/BaseHandlerOptions.ts +0 -13
  345. package/src/internals/OnErrorFunction.ts +0 -11
  346. package/src/internals/procedure.ts +0 -283
  347. package/src/internals/wrapCallSafe.ts +0 -19
  348. package/src/ws/index.ts +0 -8
  349. package/ws/dist/trpc-server-ws.cjs.d.ts +0 -1
  350. package/ws/dist/trpc-server-ws.cjs.dev.js +0 -15
  351. package/ws/dist/trpc-server-ws.cjs.js +0 -7
  352. package/ws/dist/trpc-server-ws.cjs.prod.js +0 -15
  353. package/ws/dist/trpc-server-ws.esm.js +0 -11
  354. package/ws/index.d.ts +0 -1
  355. package/ws/index.js +0 -1
@@ -0,0 +1,406 @@
1
+ import { AnyRouter, AnyRouterDef, Router } from "../../router";
2
+ import { mergeRouters } from '../mergeRouters';
3
+
4
+ export function mergeRoutersGeneric<
5
+ RP0 extends AnyRouterDef
6
+ >(
7
+ router0: Router<RP0>
8
+ ): Router<{
9
+ router: true;
10
+ _ctx: RP0['_ctx'];
11
+ legacy: RP0['legacy'];
12
+ _errorShape: RP0['_errorShape'];
13
+ _meta: RP0['_meta'];
14
+ transformer: RP0['transformer'];
15
+ errorFormatter: RP0['errorFormatter'];
16
+ queries: RP0['queries'];
17
+ mutations: RP0['mutations'];
18
+ subscriptions: RP0['subscriptions'];
19
+ procedures: RP0['procedures'];
20
+ routers: RP0['routers'];
21
+ record: RP0['record'];
22
+ }> & RP0['record'];
23
+
24
+ export function mergeRoutersGeneric<
25
+ RP0 extends AnyRouterDef, RP1 extends AnyRouterDef
26
+ >(
27
+ router0: Router<RP0>, router1: Router<RP1>
28
+ ): Router<{
29
+ router: true;
30
+ _ctx: RP0['_ctx'];
31
+ legacy: RP0['legacy'] & RP1['legacy'];
32
+ _errorShape: RP0['_errorShape'];
33
+ _meta: RP0['_meta'];
34
+ transformer: RP0['transformer'];
35
+ errorFormatter: RP0['errorFormatter'];
36
+ queries: RP0['queries'] & RP1['queries'];
37
+ mutations: RP0['mutations'] & RP1['mutations'];
38
+ subscriptions: RP0['subscriptions'] & RP1['subscriptions'];
39
+ procedures: RP0['procedures'] & RP1['procedures'];
40
+ routers: RP0['routers'] & RP1['routers'];
41
+ record: RP0['record'] & RP1['record'];
42
+ }> & RP0['record'] & RP1['record'];
43
+
44
+ export function mergeRoutersGeneric<
45
+ RP0 extends AnyRouterDef, RP1 extends AnyRouterDef, RP2 extends AnyRouterDef
46
+ >(
47
+ router0: Router<RP0>, router1: Router<RP1>, router2: Router<RP2>
48
+ ): Router<{
49
+ router: true;
50
+ _ctx: RP0['_ctx'];
51
+ legacy: RP0['legacy'] & RP1['legacy'] & RP2['legacy'];
52
+ _errorShape: RP0['_errorShape'];
53
+ _meta: RP0['_meta'];
54
+ transformer: RP0['transformer'];
55
+ errorFormatter: RP0['errorFormatter'];
56
+ queries: RP0['queries'] & RP1['queries'] & RP2['queries'];
57
+ mutations: RP0['mutations'] & RP1['mutations'] & RP2['mutations'];
58
+ subscriptions: RP0['subscriptions'] & RP1['subscriptions'] & RP2['subscriptions'];
59
+ procedures: RP0['procedures'] & RP1['procedures'] & RP2['procedures'];
60
+ routers: RP0['routers'] & RP1['routers'] & RP2['routers'];
61
+ record: RP0['record'] & RP1['record'] & RP2['record'];
62
+ }> & RP0['record'] & RP1['record'] & RP2['record'];
63
+
64
+ export function mergeRoutersGeneric<
65
+ RP0 extends AnyRouterDef, RP1 extends AnyRouterDef, RP2 extends AnyRouterDef, RP3 extends AnyRouterDef
66
+ >(
67
+ router0: Router<RP0>, router1: Router<RP1>, router2: Router<RP2>, router3: Router<RP3>
68
+ ): Router<{
69
+ router: true;
70
+ _ctx: RP0['_ctx'];
71
+ legacy: RP0['legacy'] & RP1['legacy'] & RP2['legacy'] & RP3['legacy'];
72
+ _errorShape: RP0['_errorShape'];
73
+ _meta: RP0['_meta'];
74
+ transformer: RP0['transformer'];
75
+ errorFormatter: RP0['errorFormatter'];
76
+ queries: RP0['queries'] & RP1['queries'] & RP2['queries'] & RP3['queries'];
77
+ mutations: RP0['mutations'] & RP1['mutations'] & RP2['mutations'] & RP3['mutations'];
78
+ subscriptions: RP0['subscriptions'] & RP1['subscriptions'] & RP2['subscriptions'] & RP3['subscriptions'];
79
+ procedures: RP0['procedures'] & RP1['procedures'] & RP2['procedures'] & RP3['procedures'];
80
+ routers: RP0['routers'] & RP1['routers'] & RP2['routers'] & RP3['routers'];
81
+ record: RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'];
82
+ }> & RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'];
83
+
84
+ export function mergeRoutersGeneric<
85
+ RP0 extends AnyRouterDef, RP1 extends AnyRouterDef, RP2 extends AnyRouterDef, RP3 extends AnyRouterDef, RP4 extends AnyRouterDef
86
+ >(
87
+ router0: Router<RP0>, router1: Router<RP1>, router2: Router<RP2>, router3: Router<RP3>, router4: Router<RP4>
88
+ ): Router<{
89
+ router: true;
90
+ _ctx: RP0['_ctx'];
91
+ legacy: RP0['legacy'] & RP1['legacy'] & RP2['legacy'] & RP3['legacy'] & RP4['legacy'];
92
+ _errorShape: RP0['_errorShape'];
93
+ _meta: RP0['_meta'];
94
+ transformer: RP0['transformer'];
95
+ errorFormatter: RP0['errorFormatter'];
96
+ queries: RP0['queries'] & RP1['queries'] & RP2['queries'] & RP3['queries'] & RP4['queries'];
97
+ mutations: RP0['mutations'] & RP1['mutations'] & RP2['mutations'] & RP3['mutations'] & RP4['mutations'];
98
+ subscriptions: RP0['subscriptions'] & RP1['subscriptions'] & RP2['subscriptions'] & RP3['subscriptions'] & RP4['subscriptions'];
99
+ procedures: RP0['procedures'] & RP1['procedures'] & RP2['procedures'] & RP3['procedures'] & RP4['procedures'];
100
+ routers: RP0['routers'] & RP1['routers'] & RP2['routers'] & RP3['routers'] & RP4['routers'];
101
+ record: RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'];
102
+ }> & RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'];
103
+
104
+ export function mergeRoutersGeneric<
105
+ RP0 extends AnyRouterDef, RP1 extends AnyRouterDef, RP2 extends AnyRouterDef, RP3 extends AnyRouterDef, RP4 extends AnyRouterDef, RP5 extends AnyRouterDef
106
+ >(
107
+ router0: Router<RP0>, router1: Router<RP1>, router2: Router<RP2>, router3: Router<RP3>, router4: Router<RP4>, router5: Router<RP5>
108
+ ): Router<{
109
+ router: true;
110
+ _ctx: RP0['_ctx'];
111
+ legacy: RP0['legacy'] & RP1['legacy'] & RP2['legacy'] & RP3['legacy'] & RP4['legacy'] & RP5['legacy'];
112
+ _errorShape: RP0['_errorShape'];
113
+ _meta: RP0['_meta'];
114
+ transformer: RP0['transformer'];
115
+ errorFormatter: RP0['errorFormatter'];
116
+ queries: RP0['queries'] & RP1['queries'] & RP2['queries'] & RP3['queries'] & RP4['queries'] & RP5['queries'];
117
+ mutations: RP0['mutations'] & RP1['mutations'] & RP2['mutations'] & RP3['mutations'] & RP4['mutations'] & RP5['mutations'];
118
+ subscriptions: RP0['subscriptions'] & RP1['subscriptions'] & RP2['subscriptions'] & RP3['subscriptions'] & RP4['subscriptions'] & RP5['subscriptions'];
119
+ procedures: RP0['procedures'] & RP1['procedures'] & RP2['procedures'] & RP3['procedures'] & RP4['procedures'] & RP5['procedures'];
120
+ routers: RP0['routers'] & RP1['routers'] & RP2['routers'] & RP3['routers'] & RP4['routers'] & RP5['routers'];
121
+ record: RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'];
122
+ }> & RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'];
123
+
124
+ export function mergeRoutersGeneric<
125
+ RP0 extends AnyRouterDef, RP1 extends AnyRouterDef, RP2 extends AnyRouterDef, RP3 extends AnyRouterDef, RP4 extends AnyRouterDef, RP5 extends AnyRouterDef, RP6 extends AnyRouterDef
126
+ >(
127
+ router0: Router<RP0>, router1: Router<RP1>, router2: Router<RP2>, router3: Router<RP3>, router4: Router<RP4>, router5: Router<RP5>, router6: Router<RP6>
128
+ ): Router<{
129
+ router: true;
130
+ _ctx: RP0['_ctx'];
131
+ legacy: RP0['legacy'] & RP1['legacy'] & RP2['legacy'] & RP3['legacy'] & RP4['legacy'] & RP5['legacy'] & RP6['legacy'];
132
+ _errorShape: RP0['_errorShape'];
133
+ _meta: RP0['_meta'];
134
+ transformer: RP0['transformer'];
135
+ errorFormatter: RP0['errorFormatter'];
136
+ queries: RP0['queries'] & RP1['queries'] & RP2['queries'] & RP3['queries'] & RP4['queries'] & RP5['queries'] & RP6['queries'];
137
+ mutations: RP0['mutations'] & RP1['mutations'] & RP2['mutations'] & RP3['mutations'] & RP4['mutations'] & RP5['mutations'] & RP6['mutations'];
138
+ subscriptions: RP0['subscriptions'] & RP1['subscriptions'] & RP2['subscriptions'] & RP3['subscriptions'] & RP4['subscriptions'] & RP5['subscriptions'] & RP6['subscriptions'];
139
+ procedures: RP0['procedures'] & RP1['procedures'] & RP2['procedures'] & RP3['procedures'] & RP4['procedures'] & RP5['procedures'] & RP6['procedures'];
140
+ routers: RP0['routers'] & RP1['routers'] & RP2['routers'] & RP3['routers'] & RP4['routers'] & RP5['routers'] & RP6['routers'];
141
+ record: RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'];
142
+ }> & RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'];
143
+
144
+ export function mergeRoutersGeneric<
145
+ RP0 extends AnyRouterDef, RP1 extends AnyRouterDef, RP2 extends AnyRouterDef, RP3 extends AnyRouterDef, RP4 extends AnyRouterDef, RP5 extends AnyRouterDef, RP6 extends AnyRouterDef, RP7 extends AnyRouterDef
146
+ >(
147
+ router0: Router<RP0>, router1: Router<RP1>, router2: Router<RP2>, router3: Router<RP3>, router4: Router<RP4>, router5: Router<RP5>, router6: Router<RP6>, router7: Router<RP7>
148
+ ): Router<{
149
+ router: true;
150
+ _ctx: RP0['_ctx'];
151
+ legacy: RP0['legacy'] & RP1['legacy'] & RP2['legacy'] & RP3['legacy'] & RP4['legacy'] & RP5['legacy'] & RP6['legacy'] & RP7['legacy'];
152
+ _errorShape: RP0['_errorShape'];
153
+ _meta: RP0['_meta'];
154
+ transformer: RP0['transformer'];
155
+ errorFormatter: RP0['errorFormatter'];
156
+ queries: RP0['queries'] & RP1['queries'] & RP2['queries'] & RP3['queries'] & RP4['queries'] & RP5['queries'] & RP6['queries'] & RP7['queries'];
157
+ mutations: RP0['mutations'] & RP1['mutations'] & RP2['mutations'] & RP3['mutations'] & RP4['mutations'] & RP5['mutations'] & RP6['mutations'] & RP7['mutations'];
158
+ subscriptions: RP0['subscriptions'] & RP1['subscriptions'] & RP2['subscriptions'] & RP3['subscriptions'] & RP4['subscriptions'] & RP5['subscriptions'] & RP6['subscriptions'] & RP7['subscriptions'];
159
+ procedures: RP0['procedures'] & RP1['procedures'] & RP2['procedures'] & RP3['procedures'] & RP4['procedures'] & RP5['procedures'] & RP6['procedures'] & RP7['procedures'];
160
+ routers: RP0['routers'] & RP1['routers'] & RP2['routers'] & RP3['routers'] & RP4['routers'] & RP5['routers'] & RP6['routers'] & RP7['routers'];
161
+ record: RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'];
162
+ }> & RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'];
163
+
164
+ export function mergeRoutersGeneric<
165
+ RP0 extends AnyRouterDef, RP1 extends AnyRouterDef, RP2 extends AnyRouterDef, RP3 extends AnyRouterDef, RP4 extends AnyRouterDef, RP5 extends AnyRouterDef, RP6 extends AnyRouterDef, RP7 extends AnyRouterDef, RP8 extends AnyRouterDef
166
+ >(
167
+ router0: Router<RP0>, router1: Router<RP1>, router2: Router<RP2>, router3: Router<RP3>, router4: Router<RP4>, router5: Router<RP5>, router6: Router<RP6>, router7: Router<RP7>, router8: Router<RP8>
168
+ ): Router<{
169
+ router: true;
170
+ _ctx: RP0['_ctx'];
171
+ legacy: RP0['legacy'] & RP1['legacy'] & RP2['legacy'] & RP3['legacy'] & RP4['legacy'] & RP5['legacy'] & RP6['legacy'] & RP7['legacy'] & RP8['legacy'];
172
+ _errorShape: RP0['_errorShape'];
173
+ _meta: RP0['_meta'];
174
+ transformer: RP0['transformer'];
175
+ errorFormatter: RP0['errorFormatter'];
176
+ queries: RP0['queries'] & RP1['queries'] & RP2['queries'] & RP3['queries'] & RP4['queries'] & RP5['queries'] & RP6['queries'] & RP7['queries'] & RP8['queries'];
177
+ mutations: RP0['mutations'] & RP1['mutations'] & RP2['mutations'] & RP3['mutations'] & RP4['mutations'] & RP5['mutations'] & RP6['mutations'] & RP7['mutations'] & RP8['mutations'];
178
+ subscriptions: RP0['subscriptions'] & RP1['subscriptions'] & RP2['subscriptions'] & RP3['subscriptions'] & RP4['subscriptions'] & RP5['subscriptions'] & RP6['subscriptions'] & RP7['subscriptions'] & RP8['subscriptions'];
179
+ procedures: RP0['procedures'] & RP1['procedures'] & RP2['procedures'] & RP3['procedures'] & RP4['procedures'] & RP5['procedures'] & RP6['procedures'] & RP7['procedures'] & RP8['procedures'];
180
+ routers: RP0['routers'] & RP1['routers'] & RP2['routers'] & RP3['routers'] & RP4['routers'] & RP5['routers'] & RP6['routers'] & RP7['routers'] & RP8['routers'];
181
+ record: RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'];
182
+ }> & RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'];
183
+
184
+ export function mergeRoutersGeneric<
185
+ RP0 extends AnyRouterDef, RP1 extends AnyRouterDef, RP2 extends AnyRouterDef, RP3 extends AnyRouterDef, RP4 extends AnyRouterDef, RP5 extends AnyRouterDef, RP6 extends AnyRouterDef, RP7 extends AnyRouterDef, RP8 extends AnyRouterDef, RP9 extends AnyRouterDef
186
+ >(
187
+ router0: Router<RP0>, router1: Router<RP1>, router2: Router<RP2>, router3: Router<RP3>, router4: Router<RP4>, router5: Router<RP5>, router6: Router<RP6>, router7: Router<RP7>, router8: Router<RP8>, router9: Router<RP9>
188
+ ): Router<{
189
+ router: true;
190
+ _ctx: RP0['_ctx'];
191
+ legacy: RP0['legacy'] & RP1['legacy'] & RP2['legacy'] & RP3['legacy'] & RP4['legacy'] & RP5['legacy'] & RP6['legacy'] & RP7['legacy'] & RP8['legacy'] & RP9['legacy'];
192
+ _errorShape: RP0['_errorShape'];
193
+ _meta: RP0['_meta'];
194
+ transformer: RP0['transformer'];
195
+ errorFormatter: RP0['errorFormatter'];
196
+ queries: RP0['queries'] & RP1['queries'] & RP2['queries'] & RP3['queries'] & RP4['queries'] & RP5['queries'] & RP6['queries'] & RP7['queries'] & RP8['queries'] & RP9['queries'];
197
+ mutations: RP0['mutations'] & RP1['mutations'] & RP2['mutations'] & RP3['mutations'] & RP4['mutations'] & RP5['mutations'] & RP6['mutations'] & RP7['mutations'] & RP8['mutations'] & RP9['mutations'];
198
+ subscriptions: RP0['subscriptions'] & RP1['subscriptions'] & RP2['subscriptions'] & RP3['subscriptions'] & RP4['subscriptions'] & RP5['subscriptions'] & RP6['subscriptions'] & RP7['subscriptions'] & RP8['subscriptions'] & RP9['subscriptions'];
199
+ procedures: RP0['procedures'] & RP1['procedures'] & RP2['procedures'] & RP3['procedures'] & RP4['procedures'] & RP5['procedures'] & RP6['procedures'] & RP7['procedures'] & RP8['procedures'] & RP9['procedures'];
200
+ routers: RP0['routers'] & RP1['routers'] & RP2['routers'] & RP3['routers'] & RP4['routers'] & RP5['routers'] & RP6['routers'] & RP7['routers'] & RP8['routers'] & RP9['routers'];
201
+ record: RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'] & RP9['record'];
202
+ }> & RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'] & RP9['record'];
203
+
204
+ export function mergeRoutersGeneric<
205
+ RP0 extends AnyRouterDef, RP1 extends AnyRouterDef, RP2 extends AnyRouterDef, RP3 extends AnyRouterDef, RP4 extends AnyRouterDef, RP5 extends AnyRouterDef, RP6 extends AnyRouterDef, RP7 extends AnyRouterDef, RP8 extends AnyRouterDef, RP9 extends AnyRouterDef, RP10 extends AnyRouterDef
206
+ >(
207
+ router0: Router<RP0>, router1: Router<RP1>, router2: Router<RP2>, router3: Router<RP3>, router4: Router<RP4>, router5: Router<RP5>, router6: Router<RP6>, router7: Router<RP7>, router8: Router<RP8>, router9: Router<RP9>, router10: Router<RP10>
208
+ ): Router<{
209
+ router: true;
210
+ _ctx: RP0['_ctx'];
211
+ legacy: RP0['legacy'] & RP1['legacy'] & RP2['legacy'] & RP3['legacy'] & RP4['legacy'] & RP5['legacy'] & RP6['legacy'] & RP7['legacy'] & RP8['legacy'] & RP9['legacy'] & RP10['legacy'];
212
+ _errorShape: RP0['_errorShape'];
213
+ _meta: RP0['_meta'];
214
+ transformer: RP0['transformer'];
215
+ errorFormatter: RP0['errorFormatter'];
216
+ queries: RP0['queries'] & RP1['queries'] & RP2['queries'] & RP3['queries'] & RP4['queries'] & RP5['queries'] & RP6['queries'] & RP7['queries'] & RP8['queries'] & RP9['queries'] & RP10['queries'];
217
+ mutations: RP0['mutations'] & RP1['mutations'] & RP2['mutations'] & RP3['mutations'] & RP4['mutations'] & RP5['mutations'] & RP6['mutations'] & RP7['mutations'] & RP8['mutations'] & RP9['mutations'] & RP10['mutations'];
218
+ subscriptions: RP0['subscriptions'] & RP1['subscriptions'] & RP2['subscriptions'] & RP3['subscriptions'] & RP4['subscriptions'] & RP5['subscriptions'] & RP6['subscriptions'] & RP7['subscriptions'] & RP8['subscriptions'] & RP9['subscriptions'] & RP10['subscriptions'];
219
+ procedures: RP0['procedures'] & RP1['procedures'] & RP2['procedures'] & RP3['procedures'] & RP4['procedures'] & RP5['procedures'] & RP6['procedures'] & RP7['procedures'] & RP8['procedures'] & RP9['procedures'] & RP10['procedures'];
220
+ routers: RP0['routers'] & RP1['routers'] & RP2['routers'] & RP3['routers'] & RP4['routers'] & RP5['routers'] & RP6['routers'] & RP7['routers'] & RP8['routers'] & RP9['routers'] & RP10['routers'];
221
+ record: RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'] & RP9['record'] & RP10['record'];
222
+ }> & RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'] & RP9['record'] & RP10['record'];
223
+
224
+ export function mergeRoutersGeneric<
225
+ RP0 extends AnyRouterDef, RP1 extends AnyRouterDef, RP2 extends AnyRouterDef, RP3 extends AnyRouterDef, RP4 extends AnyRouterDef, RP5 extends AnyRouterDef, RP6 extends AnyRouterDef, RP7 extends AnyRouterDef, RP8 extends AnyRouterDef, RP9 extends AnyRouterDef, RP10 extends AnyRouterDef, RP11 extends AnyRouterDef
226
+ >(
227
+ router0: Router<RP0>, router1: Router<RP1>, router2: Router<RP2>, router3: Router<RP3>, router4: Router<RP4>, router5: Router<RP5>, router6: Router<RP6>, router7: Router<RP7>, router8: Router<RP8>, router9: Router<RP9>, router10: Router<RP10>, router11: Router<RP11>
228
+ ): Router<{
229
+ router: true;
230
+ _ctx: RP0['_ctx'];
231
+ legacy: RP0['legacy'] & RP1['legacy'] & RP2['legacy'] & RP3['legacy'] & RP4['legacy'] & RP5['legacy'] & RP6['legacy'] & RP7['legacy'] & RP8['legacy'] & RP9['legacy'] & RP10['legacy'] & RP11['legacy'];
232
+ _errorShape: RP0['_errorShape'];
233
+ _meta: RP0['_meta'];
234
+ transformer: RP0['transformer'];
235
+ errorFormatter: RP0['errorFormatter'];
236
+ queries: RP0['queries'] & RP1['queries'] & RP2['queries'] & RP3['queries'] & RP4['queries'] & RP5['queries'] & RP6['queries'] & RP7['queries'] & RP8['queries'] & RP9['queries'] & RP10['queries'] & RP11['queries'];
237
+ mutations: RP0['mutations'] & RP1['mutations'] & RP2['mutations'] & RP3['mutations'] & RP4['mutations'] & RP5['mutations'] & RP6['mutations'] & RP7['mutations'] & RP8['mutations'] & RP9['mutations'] & RP10['mutations'] & RP11['mutations'];
238
+ subscriptions: RP0['subscriptions'] & RP1['subscriptions'] & RP2['subscriptions'] & RP3['subscriptions'] & RP4['subscriptions'] & RP5['subscriptions'] & RP6['subscriptions'] & RP7['subscriptions'] & RP8['subscriptions'] & RP9['subscriptions'] & RP10['subscriptions'] & RP11['subscriptions'];
239
+ procedures: RP0['procedures'] & RP1['procedures'] & RP2['procedures'] & RP3['procedures'] & RP4['procedures'] & RP5['procedures'] & RP6['procedures'] & RP7['procedures'] & RP8['procedures'] & RP9['procedures'] & RP10['procedures'] & RP11['procedures'];
240
+ routers: RP0['routers'] & RP1['routers'] & RP2['routers'] & RP3['routers'] & RP4['routers'] & RP5['routers'] & RP6['routers'] & RP7['routers'] & RP8['routers'] & RP9['routers'] & RP10['routers'] & RP11['routers'];
241
+ record: RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'] & RP9['record'] & RP10['record'] & RP11['record'];
242
+ }> & RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'] & RP9['record'] & RP10['record'] & RP11['record'];
243
+
244
+ export function mergeRoutersGeneric<
245
+ RP0 extends AnyRouterDef, RP1 extends AnyRouterDef, RP2 extends AnyRouterDef, RP3 extends AnyRouterDef, RP4 extends AnyRouterDef, RP5 extends AnyRouterDef, RP6 extends AnyRouterDef, RP7 extends AnyRouterDef, RP8 extends AnyRouterDef, RP9 extends AnyRouterDef, RP10 extends AnyRouterDef, RP11 extends AnyRouterDef, RP12 extends AnyRouterDef
246
+ >(
247
+ router0: Router<RP0>, router1: Router<RP1>, router2: Router<RP2>, router3: Router<RP3>, router4: Router<RP4>, router5: Router<RP5>, router6: Router<RP6>, router7: Router<RP7>, router8: Router<RP8>, router9: Router<RP9>, router10: Router<RP10>, router11: Router<RP11>, router12: Router<RP12>
248
+ ): Router<{
249
+ router: true;
250
+ _ctx: RP0['_ctx'];
251
+ legacy: RP0['legacy'] & RP1['legacy'] & RP2['legacy'] & RP3['legacy'] & RP4['legacy'] & RP5['legacy'] & RP6['legacy'] & RP7['legacy'] & RP8['legacy'] & RP9['legacy'] & RP10['legacy'] & RP11['legacy'] & RP12['legacy'];
252
+ _errorShape: RP0['_errorShape'];
253
+ _meta: RP0['_meta'];
254
+ transformer: RP0['transformer'];
255
+ errorFormatter: RP0['errorFormatter'];
256
+ queries: RP0['queries'] & RP1['queries'] & RP2['queries'] & RP3['queries'] & RP4['queries'] & RP5['queries'] & RP6['queries'] & RP7['queries'] & RP8['queries'] & RP9['queries'] & RP10['queries'] & RP11['queries'] & RP12['queries'];
257
+ mutations: RP0['mutations'] & RP1['mutations'] & RP2['mutations'] & RP3['mutations'] & RP4['mutations'] & RP5['mutations'] & RP6['mutations'] & RP7['mutations'] & RP8['mutations'] & RP9['mutations'] & RP10['mutations'] & RP11['mutations'] & RP12['mutations'];
258
+ subscriptions: RP0['subscriptions'] & RP1['subscriptions'] & RP2['subscriptions'] & RP3['subscriptions'] & RP4['subscriptions'] & RP5['subscriptions'] & RP6['subscriptions'] & RP7['subscriptions'] & RP8['subscriptions'] & RP9['subscriptions'] & RP10['subscriptions'] & RP11['subscriptions'] & RP12['subscriptions'];
259
+ procedures: RP0['procedures'] & RP1['procedures'] & RP2['procedures'] & RP3['procedures'] & RP4['procedures'] & RP5['procedures'] & RP6['procedures'] & RP7['procedures'] & RP8['procedures'] & RP9['procedures'] & RP10['procedures'] & RP11['procedures'] & RP12['procedures'];
260
+ routers: RP0['routers'] & RP1['routers'] & RP2['routers'] & RP3['routers'] & RP4['routers'] & RP5['routers'] & RP6['routers'] & RP7['routers'] & RP8['routers'] & RP9['routers'] & RP10['routers'] & RP11['routers'] & RP12['routers'];
261
+ record: RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'] & RP9['record'] & RP10['record'] & RP11['record'] & RP12['record'];
262
+ }> & RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'] & RP9['record'] & RP10['record'] & RP11['record'] & RP12['record'];
263
+
264
+ export function mergeRoutersGeneric<
265
+ RP0 extends AnyRouterDef, RP1 extends AnyRouterDef, RP2 extends AnyRouterDef, RP3 extends AnyRouterDef, RP4 extends AnyRouterDef, RP5 extends AnyRouterDef, RP6 extends AnyRouterDef, RP7 extends AnyRouterDef, RP8 extends AnyRouterDef, RP9 extends AnyRouterDef, RP10 extends AnyRouterDef, RP11 extends AnyRouterDef, RP12 extends AnyRouterDef, RP13 extends AnyRouterDef
266
+ >(
267
+ router0: Router<RP0>, router1: Router<RP1>, router2: Router<RP2>, router3: Router<RP3>, router4: Router<RP4>, router5: Router<RP5>, router6: Router<RP6>, router7: Router<RP7>, router8: Router<RP8>, router9: Router<RP9>, router10: Router<RP10>, router11: Router<RP11>, router12: Router<RP12>, router13: Router<RP13>
268
+ ): Router<{
269
+ router: true;
270
+ _ctx: RP0['_ctx'];
271
+ legacy: RP0['legacy'] & RP1['legacy'] & RP2['legacy'] & RP3['legacy'] & RP4['legacy'] & RP5['legacy'] & RP6['legacy'] & RP7['legacy'] & RP8['legacy'] & RP9['legacy'] & RP10['legacy'] & RP11['legacy'] & RP12['legacy'] & RP13['legacy'];
272
+ _errorShape: RP0['_errorShape'];
273
+ _meta: RP0['_meta'];
274
+ transformer: RP0['transformer'];
275
+ errorFormatter: RP0['errorFormatter'];
276
+ queries: RP0['queries'] & RP1['queries'] & RP2['queries'] & RP3['queries'] & RP4['queries'] & RP5['queries'] & RP6['queries'] & RP7['queries'] & RP8['queries'] & RP9['queries'] & RP10['queries'] & RP11['queries'] & RP12['queries'] & RP13['queries'];
277
+ mutations: RP0['mutations'] & RP1['mutations'] & RP2['mutations'] & RP3['mutations'] & RP4['mutations'] & RP5['mutations'] & RP6['mutations'] & RP7['mutations'] & RP8['mutations'] & RP9['mutations'] & RP10['mutations'] & RP11['mutations'] & RP12['mutations'] & RP13['mutations'];
278
+ subscriptions: RP0['subscriptions'] & RP1['subscriptions'] & RP2['subscriptions'] & RP3['subscriptions'] & RP4['subscriptions'] & RP5['subscriptions'] & RP6['subscriptions'] & RP7['subscriptions'] & RP8['subscriptions'] & RP9['subscriptions'] & RP10['subscriptions'] & RP11['subscriptions'] & RP12['subscriptions'] & RP13['subscriptions'];
279
+ procedures: RP0['procedures'] & RP1['procedures'] & RP2['procedures'] & RP3['procedures'] & RP4['procedures'] & RP5['procedures'] & RP6['procedures'] & RP7['procedures'] & RP8['procedures'] & RP9['procedures'] & RP10['procedures'] & RP11['procedures'] & RP12['procedures'] & RP13['procedures'];
280
+ routers: RP0['routers'] & RP1['routers'] & RP2['routers'] & RP3['routers'] & RP4['routers'] & RP5['routers'] & RP6['routers'] & RP7['routers'] & RP8['routers'] & RP9['routers'] & RP10['routers'] & RP11['routers'] & RP12['routers'] & RP13['routers'];
281
+ record: RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'] & RP9['record'] & RP10['record'] & RP11['record'] & RP12['record'] & RP13['record'];
282
+ }> & RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'] & RP9['record'] & RP10['record'] & RP11['record'] & RP12['record'] & RP13['record'];
283
+
284
+ export function mergeRoutersGeneric<
285
+ RP0 extends AnyRouterDef, RP1 extends AnyRouterDef, RP2 extends AnyRouterDef, RP3 extends AnyRouterDef, RP4 extends AnyRouterDef, RP5 extends AnyRouterDef, RP6 extends AnyRouterDef, RP7 extends AnyRouterDef, RP8 extends AnyRouterDef, RP9 extends AnyRouterDef, RP10 extends AnyRouterDef, RP11 extends AnyRouterDef, RP12 extends AnyRouterDef, RP13 extends AnyRouterDef, RP14 extends AnyRouterDef
286
+ >(
287
+ router0: Router<RP0>, router1: Router<RP1>, router2: Router<RP2>, router3: Router<RP3>, router4: Router<RP4>, router5: Router<RP5>, router6: Router<RP6>, router7: Router<RP7>, router8: Router<RP8>, router9: Router<RP9>, router10: Router<RP10>, router11: Router<RP11>, router12: Router<RP12>, router13: Router<RP13>, router14: Router<RP14>
288
+ ): Router<{
289
+ router: true;
290
+ _ctx: RP0['_ctx'];
291
+ legacy: RP0['legacy'] & RP1['legacy'] & RP2['legacy'] & RP3['legacy'] & RP4['legacy'] & RP5['legacy'] & RP6['legacy'] & RP7['legacy'] & RP8['legacy'] & RP9['legacy'] & RP10['legacy'] & RP11['legacy'] & RP12['legacy'] & RP13['legacy'] & RP14['legacy'];
292
+ _errorShape: RP0['_errorShape'];
293
+ _meta: RP0['_meta'];
294
+ transformer: RP0['transformer'];
295
+ errorFormatter: RP0['errorFormatter'];
296
+ queries: RP0['queries'] & RP1['queries'] & RP2['queries'] & RP3['queries'] & RP4['queries'] & RP5['queries'] & RP6['queries'] & RP7['queries'] & RP8['queries'] & RP9['queries'] & RP10['queries'] & RP11['queries'] & RP12['queries'] & RP13['queries'] & RP14['queries'];
297
+ mutations: RP0['mutations'] & RP1['mutations'] & RP2['mutations'] & RP3['mutations'] & RP4['mutations'] & RP5['mutations'] & RP6['mutations'] & RP7['mutations'] & RP8['mutations'] & RP9['mutations'] & RP10['mutations'] & RP11['mutations'] & RP12['mutations'] & RP13['mutations'] & RP14['mutations'];
298
+ subscriptions: RP0['subscriptions'] & RP1['subscriptions'] & RP2['subscriptions'] & RP3['subscriptions'] & RP4['subscriptions'] & RP5['subscriptions'] & RP6['subscriptions'] & RP7['subscriptions'] & RP8['subscriptions'] & RP9['subscriptions'] & RP10['subscriptions'] & RP11['subscriptions'] & RP12['subscriptions'] & RP13['subscriptions'] & RP14['subscriptions'];
299
+ procedures: RP0['procedures'] & RP1['procedures'] & RP2['procedures'] & RP3['procedures'] & RP4['procedures'] & RP5['procedures'] & RP6['procedures'] & RP7['procedures'] & RP8['procedures'] & RP9['procedures'] & RP10['procedures'] & RP11['procedures'] & RP12['procedures'] & RP13['procedures'] & RP14['procedures'];
300
+ routers: RP0['routers'] & RP1['routers'] & RP2['routers'] & RP3['routers'] & RP4['routers'] & RP5['routers'] & RP6['routers'] & RP7['routers'] & RP8['routers'] & RP9['routers'] & RP10['routers'] & RP11['routers'] & RP12['routers'] & RP13['routers'] & RP14['routers'];
301
+ record: RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'] & RP9['record'] & RP10['record'] & RP11['record'] & RP12['record'] & RP13['record'] & RP14['record'];
302
+ }> & RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'] & RP9['record'] & RP10['record'] & RP11['record'] & RP12['record'] & RP13['record'] & RP14['record'];
303
+
304
+ export function mergeRoutersGeneric<
305
+ RP0 extends AnyRouterDef, RP1 extends AnyRouterDef, RP2 extends AnyRouterDef, RP3 extends AnyRouterDef, RP4 extends AnyRouterDef, RP5 extends AnyRouterDef, RP6 extends AnyRouterDef, RP7 extends AnyRouterDef, RP8 extends AnyRouterDef, RP9 extends AnyRouterDef, RP10 extends AnyRouterDef, RP11 extends AnyRouterDef, RP12 extends AnyRouterDef, RP13 extends AnyRouterDef, RP14 extends AnyRouterDef, RP15 extends AnyRouterDef
306
+ >(
307
+ router0: Router<RP0>, router1: Router<RP1>, router2: Router<RP2>, router3: Router<RP3>, router4: Router<RP4>, router5: Router<RP5>, router6: Router<RP6>, router7: Router<RP7>, router8: Router<RP8>, router9: Router<RP9>, router10: Router<RP10>, router11: Router<RP11>, router12: Router<RP12>, router13: Router<RP13>, router14: Router<RP14>, router15: Router<RP15>
308
+ ): Router<{
309
+ router: true;
310
+ _ctx: RP0['_ctx'];
311
+ legacy: RP0['legacy'] & RP1['legacy'] & RP2['legacy'] & RP3['legacy'] & RP4['legacy'] & RP5['legacy'] & RP6['legacy'] & RP7['legacy'] & RP8['legacy'] & RP9['legacy'] & RP10['legacy'] & RP11['legacy'] & RP12['legacy'] & RP13['legacy'] & RP14['legacy'] & RP15['legacy'];
312
+ _errorShape: RP0['_errorShape'];
313
+ _meta: RP0['_meta'];
314
+ transformer: RP0['transformer'];
315
+ errorFormatter: RP0['errorFormatter'];
316
+ queries: RP0['queries'] & RP1['queries'] & RP2['queries'] & RP3['queries'] & RP4['queries'] & RP5['queries'] & RP6['queries'] & RP7['queries'] & RP8['queries'] & RP9['queries'] & RP10['queries'] & RP11['queries'] & RP12['queries'] & RP13['queries'] & RP14['queries'] & RP15['queries'];
317
+ mutations: RP0['mutations'] & RP1['mutations'] & RP2['mutations'] & RP3['mutations'] & RP4['mutations'] & RP5['mutations'] & RP6['mutations'] & RP7['mutations'] & RP8['mutations'] & RP9['mutations'] & RP10['mutations'] & RP11['mutations'] & RP12['mutations'] & RP13['mutations'] & RP14['mutations'] & RP15['mutations'];
318
+ subscriptions: RP0['subscriptions'] & RP1['subscriptions'] & RP2['subscriptions'] & RP3['subscriptions'] & RP4['subscriptions'] & RP5['subscriptions'] & RP6['subscriptions'] & RP7['subscriptions'] & RP8['subscriptions'] & RP9['subscriptions'] & RP10['subscriptions'] & RP11['subscriptions'] & RP12['subscriptions'] & RP13['subscriptions'] & RP14['subscriptions'] & RP15['subscriptions'];
319
+ procedures: RP0['procedures'] & RP1['procedures'] & RP2['procedures'] & RP3['procedures'] & RP4['procedures'] & RP5['procedures'] & RP6['procedures'] & RP7['procedures'] & RP8['procedures'] & RP9['procedures'] & RP10['procedures'] & RP11['procedures'] & RP12['procedures'] & RP13['procedures'] & RP14['procedures'] & RP15['procedures'];
320
+ routers: RP0['routers'] & RP1['routers'] & RP2['routers'] & RP3['routers'] & RP4['routers'] & RP5['routers'] & RP6['routers'] & RP7['routers'] & RP8['routers'] & RP9['routers'] & RP10['routers'] & RP11['routers'] & RP12['routers'] & RP13['routers'] & RP14['routers'] & RP15['routers'];
321
+ record: RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'] & RP9['record'] & RP10['record'] & RP11['record'] & RP12['record'] & RP13['record'] & RP14['record'] & RP15['record'];
322
+ }> & RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'] & RP9['record'] & RP10['record'] & RP11['record'] & RP12['record'] & RP13['record'] & RP14['record'] & RP15['record'];
323
+
324
+ export function mergeRoutersGeneric<
325
+ RP0 extends AnyRouterDef, RP1 extends AnyRouterDef, RP2 extends AnyRouterDef, RP3 extends AnyRouterDef, RP4 extends AnyRouterDef, RP5 extends AnyRouterDef, RP6 extends AnyRouterDef, RP7 extends AnyRouterDef, RP8 extends AnyRouterDef, RP9 extends AnyRouterDef, RP10 extends AnyRouterDef, RP11 extends AnyRouterDef, RP12 extends AnyRouterDef, RP13 extends AnyRouterDef, RP14 extends AnyRouterDef, RP15 extends AnyRouterDef, RP16 extends AnyRouterDef
326
+ >(
327
+ router0: Router<RP0>, router1: Router<RP1>, router2: Router<RP2>, router3: Router<RP3>, router4: Router<RP4>, router5: Router<RP5>, router6: Router<RP6>, router7: Router<RP7>, router8: Router<RP8>, router9: Router<RP9>, router10: Router<RP10>, router11: Router<RP11>, router12: Router<RP12>, router13: Router<RP13>, router14: Router<RP14>, router15: Router<RP15>, router16: Router<RP16>
328
+ ): Router<{
329
+ router: true;
330
+ _ctx: RP0['_ctx'];
331
+ legacy: RP0['legacy'] & RP1['legacy'] & RP2['legacy'] & RP3['legacy'] & RP4['legacy'] & RP5['legacy'] & RP6['legacy'] & RP7['legacy'] & RP8['legacy'] & RP9['legacy'] & RP10['legacy'] & RP11['legacy'] & RP12['legacy'] & RP13['legacy'] & RP14['legacy'] & RP15['legacy'] & RP16['legacy'];
332
+ _errorShape: RP0['_errorShape'];
333
+ _meta: RP0['_meta'];
334
+ transformer: RP0['transformer'];
335
+ errorFormatter: RP0['errorFormatter'];
336
+ queries: RP0['queries'] & RP1['queries'] & RP2['queries'] & RP3['queries'] & RP4['queries'] & RP5['queries'] & RP6['queries'] & RP7['queries'] & RP8['queries'] & RP9['queries'] & RP10['queries'] & RP11['queries'] & RP12['queries'] & RP13['queries'] & RP14['queries'] & RP15['queries'] & RP16['queries'];
337
+ mutations: RP0['mutations'] & RP1['mutations'] & RP2['mutations'] & RP3['mutations'] & RP4['mutations'] & RP5['mutations'] & RP6['mutations'] & RP7['mutations'] & RP8['mutations'] & RP9['mutations'] & RP10['mutations'] & RP11['mutations'] & RP12['mutations'] & RP13['mutations'] & RP14['mutations'] & RP15['mutations'] & RP16['mutations'];
338
+ subscriptions: RP0['subscriptions'] & RP1['subscriptions'] & RP2['subscriptions'] & RP3['subscriptions'] & RP4['subscriptions'] & RP5['subscriptions'] & RP6['subscriptions'] & RP7['subscriptions'] & RP8['subscriptions'] & RP9['subscriptions'] & RP10['subscriptions'] & RP11['subscriptions'] & RP12['subscriptions'] & RP13['subscriptions'] & RP14['subscriptions'] & RP15['subscriptions'] & RP16['subscriptions'];
339
+ procedures: RP0['procedures'] & RP1['procedures'] & RP2['procedures'] & RP3['procedures'] & RP4['procedures'] & RP5['procedures'] & RP6['procedures'] & RP7['procedures'] & RP8['procedures'] & RP9['procedures'] & RP10['procedures'] & RP11['procedures'] & RP12['procedures'] & RP13['procedures'] & RP14['procedures'] & RP15['procedures'] & RP16['procedures'];
340
+ routers: RP0['routers'] & RP1['routers'] & RP2['routers'] & RP3['routers'] & RP4['routers'] & RP5['routers'] & RP6['routers'] & RP7['routers'] & RP8['routers'] & RP9['routers'] & RP10['routers'] & RP11['routers'] & RP12['routers'] & RP13['routers'] & RP14['routers'] & RP15['routers'] & RP16['routers'];
341
+ record: RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'] & RP9['record'] & RP10['record'] & RP11['record'] & RP12['record'] & RP13['record'] & RP14['record'] & RP15['record'] & RP16['record'];
342
+ }> & RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'] & RP9['record'] & RP10['record'] & RP11['record'] & RP12['record'] & RP13['record'] & RP14['record'] & RP15['record'] & RP16['record'];
343
+
344
+ export function mergeRoutersGeneric<
345
+ RP0 extends AnyRouterDef, RP1 extends AnyRouterDef, RP2 extends AnyRouterDef, RP3 extends AnyRouterDef, RP4 extends AnyRouterDef, RP5 extends AnyRouterDef, RP6 extends AnyRouterDef, RP7 extends AnyRouterDef, RP8 extends AnyRouterDef, RP9 extends AnyRouterDef, RP10 extends AnyRouterDef, RP11 extends AnyRouterDef, RP12 extends AnyRouterDef, RP13 extends AnyRouterDef, RP14 extends AnyRouterDef, RP15 extends AnyRouterDef, RP16 extends AnyRouterDef, RP17 extends AnyRouterDef
346
+ >(
347
+ router0: Router<RP0>, router1: Router<RP1>, router2: Router<RP2>, router3: Router<RP3>, router4: Router<RP4>, router5: Router<RP5>, router6: Router<RP6>, router7: Router<RP7>, router8: Router<RP8>, router9: Router<RP9>, router10: Router<RP10>, router11: Router<RP11>, router12: Router<RP12>, router13: Router<RP13>, router14: Router<RP14>, router15: Router<RP15>, router16: Router<RP16>, router17: Router<RP17>
348
+ ): Router<{
349
+ router: true;
350
+ _ctx: RP0['_ctx'];
351
+ legacy: RP0['legacy'] & RP1['legacy'] & RP2['legacy'] & RP3['legacy'] & RP4['legacy'] & RP5['legacy'] & RP6['legacy'] & RP7['legacy'] & RP8['legacy'] & RP9['legacy'] & RP10['legacy'] & RP11['legacy'] & RP12['legacy'] & RP13['legacy'] & RP14['legacy'] & RP15['legacy'] & RP16['legacy'] & RP17['legacy'];
352
+ _errorShape: RP0['_errorShape'];
353
+ _meta: RP0['_meta'];
354
+ transformer: RP0['transformer'];
355
+ errorFormatter: RP0['errorFormatter'];
356
+ queries: RP0['queries'] & RP1['queries'] & RP2['queries'] & RP3['queries'] & RP4['queries'] & RP5['queries'] & RP6['queries'] & RP7['queries'] & RP8['queries'] & RP9['queries'] & RP10['queries'] & RP11['queries'] & RP12['queries'] & RP13['queries'] & RP14['queries'] & RP15['queries'] & RP16['queries'] & RP17['queries'];
357
+ mutations: RP0['mutations'] & RP1['mutations'] & RP2['mutations'] & RP3['mutations'] & RP4['mutations'] & RP5['mutations'] & RP6['mutations'] & RP7['mutations'] & RP8['mutations'] & RP9['mutations'] & RP10['mutations'] & RP11['mutations'] & RP12['mutations'] & RP13['mutations'] & RP14['mutations'] & RP15['mutations'] & RP16['mutations'] & RP17['mutations'];
358
+ subscriptions: RP0['subscriptions'] & RP1['subscriptions'] & RP2['subscriptions'] & RP3['subscriptions'] & RP4['subscriptions'] & RP5['subscriptions'] & RP6['subscriptions'] & RP7['subscriptions'] & RP8['subscriptions'] & RP9['subscriptions'] & RP10['subscriptions'] & RP11['subscriptions'] & RP12['subscriptions'] & RP13['subscriptions'] & RP14['subscriptions'] & RP15['subscriptions'] & RP16['subscriptions'] & RP17['subscriptions'];
359
+ procedures: RP0['procedures'] & RP1['procedures'] & RP2['procedures'] & RP3['procedures'] & RP4['procedures'] & RP5['procedures'] & RP6['procedures'] & RP7['procedures'] & RP8['procedures'] & RP9['procedures'] & RP10['procedures'] & RP11['procedures'] & RP12['procedures'] & RP13['procedures'] & RP14['procedures'] & RP15['procedures'] & RP16['procedures'] & RP17['procedures'];
360
+ routers: RP0['routers'] & RP1['routers'] & RP2['routers'] & RP3['routers'] & RP4['routers'] & RP5['routers'] & RP6['routers'] & RP7['routers'] & RP8['routers'] & RP9['routers'] & RP10['routers'] & RP11['routers'] & RP12['routers'] & RP13['routers'] & RP14['routers'] & RP15['routers'] & RP16['routers'] & RP17['routers'];
361
+ record: RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'] & RP9['record'] & RP10['record'] & RP11['record'] & RP12['record'] & RP13['record'] & RP14['record'] & RP15['record'] & RP16['record'] & RP17['record'];
362
+ }> & RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'] & RP9['record'] & RP10['record'] & RP11['record'] & RP12['record'] & RP13['record'] & RP14['record'] & RP15['record'] & RP16['record'] & RP17['record'];
363
+
364
+ export function mergeRoutersGeneric<
365
+ RP0 extends AnyRouterDef, RP1 extends AnyRouterDef, RP2 extends AnyRouterDef, RP3 extends AnyRouterDef, RP4 extends AnyRouterDef, RP5 extends AnyRouterDef, RP6 extends AnyRouterDef, RP7 extends AnyRouterDef, RP8 extends AnyRouterDef, RP9 extends AnyRouterDef, RP10 extends AnyRouterDef, RP11 extends AnyRouterDef, RP12 extends AnyRouterDef, RP13 extends AnyRouterDef, RP14 extends AnyRouterDef, RP15 extends AnyRouterDef, RP16 extends AnyRouterDef, RP17 extends AnyRouterDef, RP18 extends AnyRouterDef
366
+ >(
367
+ router0: Router<RP0>, router1: Router<RP1>, router2: Router<RP2>, router3: Router<RP3>, router4: Router<RP4>, router5: Router<RP5>, router6: Router<RP6>, router7: Router<RP7>, router8: Router<RP8>, router9: Router<RP9>, router10: Router<RP10>, router11: Router<RP11>, router12: Router<RP12>, router13: Router<RP13>, router14: Router<RP14>, router15: Router<RP15>, router16: Router<RP16>, router17: Router<RP17>, router18: Router<RP18>
368
+ ): Router<{
369
+ router: true;
370
+ _ctx: RP0['_ctx'];
371
+ legacy: RP0['legacy'] & RP1['legacy'] & RP2['legacy'] & RP3['legacy'] & RP4['legacy'] & RP5['legacy'] & RP6['legacy'] & RP7['legacy'] & RP8['legacy'] & RP9['legacy'] & RP10['legacy'] & RP11['legacy'] & RP12['legacy'] & RP13['legacy'] & RP14['legacy'] & RP15['legacy'] & RP16['legacy'] & RP17['legacy'] & RP18['legacy'];
372
+ _errorShape: RP0['_errorShape'];
373
+ _meta: RP0['_meta'];
374
+ transformer: RP0['transformer'];
375
+ errorFormatter: RP0['errorFormatter'];
376
+ queries: RP0['queries'] & RP1['queries'] & RP2['queries'] & RP3['queries'] & RP4['queries'] & RP5['queries'] & RP6['queries'] & RP7['queries'] & RP8['queries'] & RP9['queries'] & RP10['queries'] & RP11['queries'] & RP12['queries'] & RP13['queries'] & RP14['queries'] & RP15['queries'] & RP16['queries'] & RP17['queries'] & RP18['queries'];
377
+ mutations: RP0['mutations'] & RP1['mutations'] & RP2['mutations'] & RP3['mutations'] & RP4['mutations'] & RP5['mutations'] & RP6['mutations'] & RP7['mutations'] & RP8['mutations'] & RP9['mutations'] & RP10['mutations'] & RP11['mutations'] & RP12['mutations'] & RP13['mutations'] & RP14['mutations'] & RP15['mutations'] & RP16['mutations'] & RP17['mutations'] & RP18['mutations'];
378
+ subscriptions: RP0['subscriptions'] & RP1['subscriptions'] & RP2['subscriptions'] & RP3['subscriptions'] & RP4['subscriptions'] & RP5['subscriptions'] & RP6['subscriptions'] & RP7['subscriptions'] & RP8['subscriptions'] & RP9['subscriptions'] & RP10['subscriptions'] & RP11['subscriptions'] & RP12['subscriptions'] & RP13['subscriptions'] & RP14['subscriptions'] & RP15['subscriptions'] & RP16['subscriptions'] & RP17['subscriptions'] & RP18['subscriptions'];
379
+ procedures: RP0['procedures'] & RP1['procedures'] & RP2['procedures'] & RP3['procedures'] & RP4['procedures'] & RP5['procedures'] & RP6['procedures'] & RP7['procedures'] & RP8['procedures'] & RP9['procedures'] & RP10['procedures'] & RP11['procedures'] & RP12['procedures'] & RP13['procedures'] & RP14['procedures'] & RP15['procedures'] & RP16['procedures'] & RP17['procedures'] & RP18['procedures'];
380
+ routers: RP0['routers'] & RP1['routers'] & RP2['routers'] & RP3['routers'] & RP4['routers'] & RP5['routers'] & RP6['routers'] & RP7['routers'] & RP8['routers'] & RP9['routers'] & RP10['routers'] & RP11['routers'] & RP12['routers'] & RP13['routers'] & RP14['routers'] & RP15['routers'] & RP16['routers'] & RP17['routers'] & RP18['routers'];
381
+ record: RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'] & RP9['record'] & RP10['record'] & RP11['record'] & RP12['record'] & RP13['record'] & RP14['record'] & RP15['record'] & RP16['record'] & RP17['record'] & RP18['record'];
382
+ }> & RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'] & RP9['record'] & RP10['record'] & RP11['record'] & RP12['record'] & RP13['record'] & RP14['record'] & RP15['record'] & RP16['record'] & RP17['record'] & RP18['record'];
383
+
384
+ export function mergeRoutersGeneric<
385
+ RP0 extends AnyRouterDef, RP1 extends AnyRouterDef, RP2 extends AnyRouterDef, RP3 extends AnyRouterDef, RP4 extends AnyRouterDef, RP5 extends AnyRouterDef, RP6 extends AnyRouterDef, RP7 extends AnyRouterDef, RP8 extends AnyRouterDef, RP9 extends AnyRouterDef, RP10 extends AnyRouterDef, RP11 extends AnyRouterDef, RP12 extends AnyRouterDef, RP13 extends AnyRouterDef, RP14 extends AnyRouterDef, RP15 extends AnyRouterDef, RP16 extends AnyRouterDef, RP17 extends AnyRouterDef, RP18 extends AnyRouterDef, RP19 extends AnyRouterDef
386
+ >(
387
+ router0: Router<RP0>, router1: Router<RP1>, router2: Router<RP2>, router3: Router<RP3>, router4: Router<RP4>, router5: Router<RP5>, router6: Router<RP6>, router7: Router<RP7>, router8: Router<RP8>, router9: Router<RP9>, router10: Router<RP10>, router11: Router<RP11>, router12: Router<RP12>, router13: Router<RP13>, router14: Router<RP14>, router15: Router<RP15>, router16: Router<RP16>, router17: Router<RP17>, router18: Router<RP18>, router19: Router<RP19>
388
+ ): Router<{
389
+ router: true;
390
+ _ctx: RP0['_ctx'];
391
+ legacy: RP0['legacy'] & RP1['legacy'] & RP2['legacy'] & RP3['legacy'] & RP4['legacy'] & RP5['legacy'] & RP6['legacy'] & RP7['legacy'] & RP8['legacy'] & RP9['legacy'] & RP10['legacy'] & RP11['legacy'] & RP12['legacy'] & RP13['legacy'] & RP14['legacy'] & RP15['legacy'] & RP16['legacy'] & RP17['legacy'] & RP18['legacy'] & RP19['legacy'];
392
+ _errorShape: RP0['_errorShape'];
393
+ _meta: RP0['_meta'];
394
+ transformer: RP0['transformer'];
395
+ errorFormatter: RP0['errorFormatter'];
396
+ queries: RP0['queries'] & RP1['queries'] & RP2['queries'] & RP3['queries'] & RP4['queries'] & RP5['queries'] & RP6['queries'] & RP7['queries'] & RP8['queries'] & RP9['queries'] & RP10['queries'] & RP11['queries'] & RP12['queries'] & RP13['queries'] & RP14['queries'] & RP15['queries'] & RP16['queries'] & RP17['queries'] & RP18['queries'] & RP19['queries'];
397
+ mutations: RP0['mutations'] & RP1['mutations'] & RP2['mutations'] & RP3['mutations'] & RP4['mutations'] & RP5['mutations'] & RP6['mutations'] & RP7['mutations'] & RP8['mutations'] & RP9['mutations'] & RP10['mutations'] & RP11['mutations'] & RP12['mutations'] & RP13['mutations'] & RP14['mutations'] & RP15['mutations'] & RP16['mutations'] & RP17['mutations'] & RP18['mutations'] & RP19['mutations'];
398
+ subscriptions: RP0['subscriptions'] & RP1['subscriptions'] & RP2['subscriptions'] & RP3['subscriptions'] & RP4['subscriptions'] & RP5['subscriptions'] & RP6['subscriptions'] & RP7['subscriptions'] & RP8['subscriptions'] & RP9['subscriptions'] & RP10['subscriptions'] & RP11['subscriptions'] & RP12['subscriptions'] & RP13['subscriptions'] & RP14['subscriptions'] & RP15['subscriptions'] & RP16['subscriptions'] & RP17['subscriptions'] & RP18['subscriptions'] & RP19['subscriptions'];
399
+ procedures: RP0['procedures'] & RP1['procedures'] & RP2['procedures'] & RP3['procedures'] & RP4['procedures'] & RP5['procedures'] & RP6['procedures'] & RP7['procedures'] & RP8['procedures'] & RP9['procedures'] & RP10['procedures'] & RP11['procedures'] & RP12['procedures'] & RP13['procedures'] & RP14['procedures'] & RP15['procedures'] & RP16['procedures'] & RP17['procedures'] & RP18['procedures'] & RP19['procedures'];
400
+ routers: RP0['routers'] & RP1['routers'] & RP2['routers'] & RP3['routers'] & RP4['routers'] & RP5['routers'] & RP6['routers'] & RP7['routers'] & RP8['routers'] & RP9['routers'] & RP10['routers'] & RP11['routers'] & RP12['routers'] & RP13['routers'] & RP14['routers'] & RP15['routers'] & RP16['routers'] & RP17['routers'] & RP18['routers'] & RP19['routers'];
401
+ record: RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'] & RP9['record'] & RP10['record'] & RP11['record'] & RP12['record'] & RP13['record'] & RP14['record'] & RP15['record'] & RP16['record'] & RP17['record'] & RP18['record'] & RP19['record'];
402
+ }> & RP0['record'] & RP1['record'] & RP2['record'] & RP3['record'] & RP4['record'] & RP5['record'] & RP6['record'] & RP7['record'] & RP8['record'] & RP9['record'] & RP10['record'] & RP11['record'] & RP12['record'] & RP13['record'] & RP14['record'] & RP15['record'] & RP16['record'] & RP17['record'] & RP18['record'] & RP19['record'];
403
+
404
+ export function mergeRoutersGeneric(...args: AnyRouter[]): AnyRouter {
405
+ return mergeRouters(...args) as any;
406
+ }
@@ -0,0 +1,43 @@
1
+ import { ErrorFormatter } from '../../error/formatter';
2
+ import {
3
+ CombinedDataTransformer,
4
+ DataTransformerOptions,
5
+ } from '../../transformer';
6
+
7
+ /**
8
+ * The initial generics that are used in the init function
9
+ * @internal
10
+ */
11
+ export interface InitGenerics {
12
+ ctx: Record<string, unknown>;
13
+ meta: Record<string, unknown>;
14
+ }
15
+ /**
16
+ * The initial params that are used and actually represents real values underneath
17
+ * @internal
18
+ */
19
+ export interface InitOptions<T extends InitGenerics> {
20
+ transformer: DataTransformerOptions;
21
+ errorFormatter: ErrorFormatter<T['ctx'], any>;
22
+ }
23
+
24
+ /**
25
+ * @internal
26
+ */
27
+ export type CreateInitGenerics<T extends InitGenerics> = T;
28
+
29
+ /**
30
+ * The config that is resolved after both calls of `initTRPC()` has been called
31
+ * Combination of `InitTOptions` + `InitGenerics`
32
+ * @internal
33
+ */
34
+ export interface RootConfig extends InitGenerics {
35
+ transformer: CombinedDataTransformer;
36
+ // FIXME this should probably be restricted
37
+ errorShape: any;
38
+ }
39
+
40
+ /**
41
+ * @internal
42
+ */
43
+ export type CreateRootConfig<T extends RootConfig> = T;
@@ -0,0 +1,47 @@
1
+ import { Parser } from '../parser';
2
+
3
+ export type ParseFn<T> = (value: unknown) => T | Promise<T>;
4
+
5
+ export function getParseFn<T>(procedureParser: Parser): ParseFn<T> {
6
+ const parser = procedureParser as any;
7
+
8
+ if (typeof parser === 'function') {
9
+ // ProcedureParserCustomValidatorEsque
10
+ return parser;
11
+ }
12
+
13
+ if (typeof parser.parseAsync === 'function') {
14
+ // ProcedureParserZodEsque
15
+ return parser.parseAsync.bind(parser);
16
+ }
17
+
18
+ if (typeof parser.parse === 'function') {
19
+ // ProcedureParserZodEsque
20
+ return parser.parse.bind(parser);
21
+ }
22
+
23
+ if (typeof parser.validateSync === 'function') {
24
+ // ProcedureParserYupEsque
25
+ return parser.validateSync.bind(parser);
26
+ }
27
+
28
+ if (typeof parser.create === 'function') {
29
+ // ProcedureParserSuperstructEsque
30
+ return parser.create.bind(parser);
31
+ }
32
+
33
+ throw new Error('Could not find a validator fn');
34
+ }
35
+
36
+ /**
37
+ * @deprecated only for backwards compat
38
+ * @internal
39
+ */
40
+ export function getParseFnOrPassThrough<T>(
41
+ procedureParser: Parser | undefined,
42
+ ): ParseFn<T> {
43
+ if (!procedureParser) {
44
+ return (v) => v as T;
45
+ }
46
+ return getParseFn(procedureParser);
47
+ }
@@ -0,0 +1,45 @@
1
+ import { defaultFormatter } from '../../error/formatter';
2
+ import { CombinedDataTransformer, defaultTransformer } from '../../transformer';
3
+ import { AnyRouter, createRouterFactory } from '../router';
4
+ import { mergeWithoutOverrides } from './mergeWithoutOverrides';
5
+
6
+ export function mergeRouters(...routerList: AnyRouter[]): AnyRouter {
7
+ const record = mergeWithoutOverrides(
8
+ {},
9
+ ...routerList.map((r) => r._def.record),
10
+ );
11
+ const errorFormatter = routerList.reduce(
12
+ (currentErrorFormatter, nextRouter) => {
13
+ if (
14
+ nextRouter.errorFormatter &&
15
+ nextRouter.errorFormatter !== defaultFormatter
16
+ ) {
17
+ if (
18
+ currentErrorFormatter !== defaultFormatter &&
19
+ currentErrorFormatter !== nextRouter.errorFormatter
20
+ ) {
21
+ throw new Error('You seem to have several error formatters');
22
+ }
23
+ return nextRouter.errorFormatter;
24
+ }
25
+ return currentErrorFormatter;
26
+ },
27
+ defaultFormatter,
28
+ );
29
+
30
+ const transformer = routerList.reduce((prev, current) => {
31
+ if (current.transformer && current.transformer !== defaultTransformer) {
32
+ if (prev !== defaultTransformer && prev !== current.transformer) {
33
+ throw new Error('You seem to have several transformers');
34
+ }
35
+ return current.transformer;
36
+ }
37
+ return prev;
38
+ }, defaultTransformer as CombinedDataTransformer);
39
+
40
+ const router = createRouterFactory({
41
+ errorFormatter,
42
+ transformer,
43
+ })(record);
44
+ return router;
45
+ }