@h4ad/serverless-adapter 2.17.0 → 3.0.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 (325) hide show
  1. package/README.md +7 -0
  2. package/lib/@types/binary-settings.js +2 -11
  3. package/lib/@types/binary-settings.js.map +1 -1
  4. package/lib/@types/digital-ocean/digital-ocean-http-event.js +2 -7
  5. package/lib/@types/digital-ocean/digital-ocean-http-event.js.map +1 -1
  6. package/lib/@types/digital-ocean/digital-ocean-http-response.js +2 -7
  7. package/lib/@types/digital-ocean/digital-ocean-http-response.js.map +1 -1
  8. package/lib/@types/digital-ocean/index.js +2 -18
  9. package/lib/@types/digital-ocean/index.js.map +1 -1
  10. package/lib/@types/headers.js +2 -11
  11. package/lib/@types/headers.js.map +1 -1
  12. package/lib/@types/helpers.js +2 -6
  13. package/lib/@types/helpers.js.map +1 -1
  14. package/lib/@types/huawei/huawei-api-gateway-event.js +2 -14
  15. package/lib/@types/huawei/huawei-api-gateway-event.js.map +1 -1
  16. package/lib/@types/huawei/huawei-api-gateway-response.js +2 -7
  17. package/lib/@types/huawei/huawei-api-gateway-response.js.map +1 -1
  18. package/lib/@types/huawei/huawei-context.js +2 -36
  19. package/lib/@types/huawei/huawei-context.js.map +1 -1
  20. package/lib/@types/huawei/index.js +2 -20
  21. package/lib/@types/huawei/index.js.map +1 -1
  22. package/lib/@types/index.js +2 -20
  23. package/lib/@types/index.js.map +1 -1
  24. package/lib/adapters/apollo-server/apollo-server-mutation.adapter.js +2 -86
  25. package/lib/adapters/apollo-server/apollo-server-mutation.adapter.js.map +1 -1
  26. package/lib/adapters/apollo-server/index.js +2 -18
  27. package/lib/adapters/apollo-server/index.js.map +1 -1
  28. package/lib/adapters/aws/alb.adapter.js +2 -129
  29. package/lib/adapters/aws/alb.adapter.js.map +1 -1
  30. package/lib/adapters/aws/api-gateway-v1.adapter.js +2 -140
  31. package/lib/adapters/aws/api-gateway-v1.adapter.js.map +1 -1
  32. package/lib/adapters/aws/api-gateway-v2.adapter.js +2 -134
  33. package/lib/adapters/aws/api-gateway-v2.adapter.js.map +1 -1
  34. package/lib/adapters/aws/base/aws-simple-adapter.js +2 -99
  35. package/lib/adapters/aws/base/aws-simple-adapter.js.map +1 -1
  36. package/lib/adapters/aws/base/index.js +2 -18
  37. package/lib/adapters/aws/base/index.js.map +1 -1
  38. package/lib/adapters/aws/dynamodb.adapter.js +2 -64
  39. package/lib/adapters/aws/dynamodb.adapter.js.map +1 -1
  40. package/lib/adapters/aws/event-bridge.adapter.js +2 -75
  41. package/lib/adapters/aws/event-bridge.adapter.js.map +1 -1
  42. package/lib/adapters/aws/index.js +2 -27
  43. package/lib/adapters/aws/index.js.map +1 -1
  44. package/lib/adapters/aws/lambda-edge.adapter.js +2 -284
  45. package/lib/adapters/aws/lambda-edge.adapter.js.map +1 -1
  46. package/lib/adapters/aws/s3.adapter.js +2 -63
  47. package/lib/adapters/aws/s3.adapter.js.map +1 -1
  48. package/lib/adapters/aws/sns.adapter.js +2 -63
  49. package/lib/adapters/aws/sns.adapter.js.map +1 -1
  50. package/lib/adapters/aws/sqs.adapter.js +2 -64
  51. package/lib/adapters/aws/sqs.adapter.js.map +1 -1
  52. package/lib/adapters/azure/http-trigger-v4.adapter.js +2 -202
  53. package/lib/adapters/azure/http-trigger-v4.adapter.js.map +1 -1
  54. package/lib/adapters/azure/index.js +2 -18
  55. package/lib/adapters/azure/index.js.map +1 -1
  56. package/lib/adapters/digital-ocean/http-function.adapter.js +2 -118
  57. package/lib/adapters/digital-ocean/http-function.adapter.js.map +1 -1
  58. package/lib/adapters/digital-ocean/index.js +2 -18
  59. package/lib/adapters/digital-ocean/index.js.map +1 -1
  60. package/lib/adapters/dummy/dummy.adapter.js +2 -54
  61. package/lib/adapters/dummy/dummy.adapter.js.map +1 -1
  62. package/lib/adapters/dummy/index.js +2 -18
  63. package/lib/adapters/dummy/index.js.map +1 -1
  64. package/lib/adapters/huawei/huawei-api-gateway.adapter.js +2 -126
  65. package/lib/adapters/huawei/huawei-api-gateway.adapter.js.map +1 -1
  66. package/lib/adapters/huawei/index.js +2 -18
  67. package/lib/adapters/huawei/index.js.map +1 -1
  68. package/lib/contracts/adapter.contract.js +2 -18
  69. package/lib/contracts/adapter.contract.js.map +1 -1
  70. package/lib/contracts/framework.contract.js +2 -7
  71. package/lib/contracts/framework.contract.js.map +1 -1
  72. package/lib/contracts/handler.contract.js +2 -13
  73. package/lib/contracts/handler.contract.js.map +1 -1
  74. package/lib/contracts/index.js +2 -21
  75. package/lib/contracts/index.js.map +1 -1
  76. package/lib/contracts/resolver.contract.js +2 -15
  77. package/lib/contracts/resolver.contract.js.map +1 -1
  78. package/lib/core/base-handler.js +2 -67
  79. package/lib/core/base-handler.js.map +1 -1
  80. package/lib/core/constants.js +2 -33
  81. package/lib/core/constants.js.map +1 -1
  82. package/lib/core/current-invoke.js +2 -46
  83. package/lib/core/current-invoke.js.map +1 -1
  84. package/lib/core/event-body.js +2 -31
  85. package/lib/core/event-body.js.map +1 -1
  86. package/lib/core/headers.js +3 -97
  87. package/lib/core/headers.js.map +1 -1
  88. package/lib/core/index.js +2 -28
  89. package/lib/core/index.js.map +1 -1
  90. package/lib/core/is-binary.js +2 -118
  91. package/lib/core/is-binary.js.map +1 -1
  92. package/lib/core/logger.js +2 -115
  93. package/lib/core/logger.js.map +1 -1
  94. package/lib/core/no-op.js +2 -12
  95. package/lib/core/no-op.js.map +1 -1
  96. package/lib/core/optional.js +2 -31
  97. package/lib/core/optional.js.map +1 -1
  98. package/lib/core/path.js +2 -68
  99. package/lib/core/path.js.map +1 -1
  100. package/lib/core/stream.js +2 -63
  101. package/lib/core/stream.js.map +1 -1
  102. package/lib/frameworks/apollo-server/apollo-server.framework.js +2 -87
  103. package/lib/frameworks/apollo-server/apollo-server.framework.js.map +1 -1
  104. package/lib/frameworks/apollo-server/index.js +2 -18
  105. package/lib/frameworks/apollo-server/index.js.map +1 -1
  106. package/lib/frameworks/body-parser/base-body-parser.framework.js +2 -66
  107. package/lib/frameworks/body-parser/base-body-parser.framework.js.map +1 -1
  108. package/lib/frameworks/body-parser/index.js +2 -22
  109. package/lib/frameworks/body-parser/index.js.map +1 -1
  110. package/lib/frameworks/body-parser/json-body-parser.framework.js +2 -29
  111. package/lib/frameworks/body-parser/json-body-parser.framework.js.map +1 -1
  112. package/lib/frameworks/body-parser/raw-body-parser.framework.js +2 -29
  113. package/lib/frameworks/body-parser/raw-body-parser.framework.js.map +1 -1
  114. package/lib/frameworks/body-parser/text-body-parser.framework.js +2 -29
  115. package/lib/frameworks/body-parser/text-body-parser.framework.js.map +1 -1
  116. package/lib/frameworks/body-parser/urlencoded-body-parser.framework.js +2 -29
  117. package/lib/frameworks/body-parser/urlencoded-body-parser.framework.js.map +1 -1
  118. package/lib/frameworks/cors/cors.framework.js +3 -145
  119. package/lib/frameworks/cors/cors.framework.js.map +1 -1
  120. package/lib/frameworks/cors/index.js +2 -18
  121. package/lib/frameworks/cors/index.js.map +1 -1
  122. package/lib/frameworks/deepkit/http-deepkit.framework.js +2 -33
  123. package/lib/frameworks/deepkit/http-deepkit.framework.js.map +1 -1
  124. package/lib/frameworks/deepkit/index.js +2 -18
  125. package/lib/frameworks/deepkit/index.js.map +1 -1
  126. package/lib/frameworks/express/express.framework.js +2 -22
  127. package/lib/frameworks/express/express.framework.js.map +1 -1
  128. package/lib/frameworks/express/index.js +2 -18
  129. package/lib/frameworks/express/index.js.map +1 -1
  130. package/lib/frameworks/fastify/fastify.framework.js +2 -23
  131. package/lib/frameworks/fastify/fastify.framework.js.map +1 -1
  132. package/lib/frameworks/fastify/helpers/no-op-content-parser.js +2 -27
  133. package/lib/frameworks/fastify/helpers/no-op-content-parser.js.map +1 -1
  134. package/lib/frameworks/fastify/index.js +2 -18
  135. package/lib/frameworks/fastify/index.js.map +1 -1
  136. package/lib/frameworks/hapi/hapi.framework.js +2 -23
  137. package/lib/frameworks/hapi/hapi.framework.js.map +1 -1
  138. package/lib/frameworks/hapi/index.js +2 -18
  139. package/lib/frameworks/hapi/index.js.map +1 -1
  140. package/lib/frameworks/koa/index.js +2 -18
  141. package/lib/frameworks/koa/index.js.map +1 -1
  142. package/lib/frameworks/koa/koa.framework.js +2 -22
  143. package/lib/frameworks/koa/koa.framework.js.map +1 -1
  144. package/lib/frameworks/lazy/index.js +2 -18
  145. package/lib/frameworks/lazy/index.js.map +1 -1
  146. package/lib/frameworks/lazy/lazy.framework.js +2 -82
  147. package/lib/frameworks/lazy/lazy.framework.js.map +1 -1
  148. package/lib/frameworks/trpc/index.js +2 -18
  149. package/lib/frameworks/trpc/index.js.map +1 -1
  150. package/lib/frameworks/trpc/trpc.framework.js +2 -153
  151. package/lib/frameworks/trpc/trpc.framework.js.map +1 -1
  152. package/lib/handlers/aws/aws-stream.handler.js +2 -169
  153. package/lib/handlers/aws/aws-stream.handler.js.map +1 -1
  154. package/lib/handlers/aws/index.js +2 -18
  155. package/lib/handlers/aws/index.js.map +1 -1
  156. package/lib/handlers/azure/azure.handler.js +2 -74
  157. package/lib/handlers/azure/azure.handler.js.map +1 -1
  158. package/lib/handlers/azure/index.js +2 -18
  159. package/lib/handlers/azure/index.js.map +1 -1
  160. package/lib/handlers/base/index.js +2 -18
  161. package/lib/handlers/base/index.js.map +1 -1
  162. package/lib/handlers/base/raw-request.js +2 -65
  163. package/lib/handlers/base/raw-request.js.map +1 -1
  164. package/lib/handlers/default/default.handler.js +2 -191
  165. package/lib/handlers/default/default.handler.js.map +1 -1
  166. package/lib/handlers/default/index.js +2 -18
  167. package/lib/handlers/default/index.js.map +1 -1
  168. package/lib/handlers/digital-ocean/digital-ocean.handler.js +2 -34
  169. package/lib/handlers/digital-ocean/digital-ocean.handler.js.map +1 -1
  170. package/lib/handlers/digital-ocean/index.js +2 -18
  171. package/lib/handlers/digital-ocean/index.js.map +1 -1
  172. package/lib/handlers/firebase/http-firebase-v2.handler.js +2 -50
  173. package/lib/handlers/firebase/http-firebase-v2.handler.js.map +1 -1
  174. package/lib/handlers/firebase/http-firebase.handler.js +2 -27
  175. package/lib/handlers/firebase/http-firebase.handler.js.map +1 -1
  176. package/lib/handlers/firebase/index.js +2 -19
  177. package/lib/handlers/firebase/index.js.map +1 -1
  178. package/lib/handlers/gcp/gcp.handler.js +2 -40
  179. package/lib/handlers/gcp/gcp.handler.js.map +1 -1
  180. package/lib/handlers/gcp/index.js +2 -18
  181. package/lib/handlers/gcp/index.js.map +1 -1
  182. package/lib/handlers/huawei/http-huawei.handler.js +2 -106
  183. package/lib/handlers/huawei/http-huawei.handler.js.map +1 -1
  184. package/lib/handlers/huawei/index.js +2 -18
  185. package/lib/handlers/huawei/index.js.map +1 -1
  186. package/lib/index.doc.js +2 -0
  187. package/lib/index.doc.js.map +1 -0
  188. package/lib/index.js +2 -22
  189. package/lib/index.js.map +1 -1
  190. package/lib/network/index.js +2 -21
  191. package/lib/network/index.js.map +1 -1
  192. package/lib/network/request.js +2 -46
  193. package/lib/network/request.js.map +1 -1
  194. package/lib/network/response-stream.js +7 -88
  195. package/lib/network/response-stream.js.map +1 -1
  196. package/lib/network/response.js +4 -127
  197. package/lib/network/response.js.map +1 -1
  198. package/lib/network/utils.js +2 -21
  199. package/lib/network/utils.js.map +1 -1
  200. package/lib/resolvers/aws-context/aws-context.resolver.js +2 -59
  201. package/lib/resolvers/aws-context/aws-context.resolver.js.map +1 -1
  202. package/lib/resolvers/aws-context/index.js +2 -18
  203. package/lib/resolvers/aws-context/index.js.map +1 -1
  204. package/lib/resolvers/callback/callback.resolver.js +2 -53
  205. package/lib/resolvers/callback/callback.resolver.js.map +1 -1
  206. package/lib/resolvers/callback/index.js +2 -18
  207. package/lib/resolvers/callback/index.js.map +1 -1
  208. package/lib/resolvers/dummy/dummy.resolver.js +2 -24
  209. package/lib/resolvers/dummy/dummy.resolver.js.map +1 -1
  210. package/lib/resolvers/dummy/index.js +2 -18
  211. package/lib/resolvers/dummy/index.js.map +1 -1
  212. package/lib/resolvers/promise/index.js +2 -18
  213. package/lib/resolvers/promise/index.js.map +1 -1
  214. package/lib/resolvers/promise/promise.resolver.js +2 -48
  215. package/lib/resolvers/promise/promise.resolver.js.map +1 -1
  216. package/lib/serverless-adapter.js +2 -176
  217. package/lib/serverless-adapter.js.map +1 -1
  218. package/package.json +61 -79
  219. package/lib/@types/binary-settings.d.ts +0 -43
  220. package/lib/@types/digital-ocean/digital-ocean-http-event.d.ts +0 -37
  221. package/lib/@types/digital-ocean/digital-ocean-http-response.d.ts +0 -22
  222. package/lib/@types/digital-ocean/index.d.ts +0 -1
  223. package/lib/@types/headers.d.ts +0 -39
  224. package/lib/@types/helpers.d.ts +0 -10
  225. package/lib/@types/huawei/huawei-api-gateway-event.d.ts +0 -84
  226. package/lib/@types/huawei/huawei-api-gateway-response.d.ts +0 -27
  227. package/lib/@types/huawei/huawei-context.d.ts +0 -203
  228. package/lib/@types/huawei/index.d.ts +0 -3
  229. package/lib/@types/index.d.ts +0 -3
  230. package/lib/adapters/apollo-server/apollo-server-mutation.adapter.d.ts +0 -56
  231. package/lib/adapters/apollo-server/index.d.ts +0 -1
  232. package/lib/adapters/aws/alb.adapter.d.ts +0 -66
  233. package/lib/adapters/aws/api-gateway-v1.adapter.d.ts +0 -71
  234. package/lib/adapters/aws/api-gateway-v2.adapter.d.ts +0 -70
  235. package/lib/adapters/aws/base/aws-simple-adapter.d.ts +0 -85
  236. package/lib/adapters/aws/base/index.d.ts +0 -1
  237. package/lib/adapters/aws/dynamodb.adapter.d.ts +0 -56
  238. package/lib/adapters/aws/event-bridge.adapter.d.ts +0 -64
  239. package/lib/adapters/aws/index.d.ts +0 -10
  240. package/lib/adapters/aws/lambda-edge.adapter.d.ts +0 -213
  241. package/lib/adapters/aws/s3.adapter.d.ts +0 -56
  242. package/lib/adapters/aws/sns.adapter.d.ts +0 -56
  243. package/lib/adapters/aws/sqs.adapter.d.ts +0 -56
  244. package/lib/adapters/azure/http-trigger-v4.adapter.d.ts +0 -81
  245. package/lib/adapters/azure/index.d.ts +0 -1
  246. package/lib/adapters/digital-ocean/http-function.adapter.d.ts +0 -65
  247. package/lib/adapters/digital-ocean/index.d.ts +0 -1
  248. package/lib/adapters/dummy/dummy.adapter.d.ts +0 -30
  249. package/lib/adapters/dummy/index.d.ts +0 -1
  250. package/lib/adapters/huawei/huawei-api-gateway.adapter.d.ts +0 -66
  251. package/lib/adapters/huawei/index.d.ts +0 -1
  252. package/lib/contracts/adapter.contract.d.ts +0 -155
  253. package/lib/contracts/framework.contract.d.ts +0 -19
  254. package/lib/contracts/handler.contract.d.ts +0 -26
  255. package/lib/contracts/index.d.ts +0 -4
  256. package/lib/contracts/resolver.contract.d.ts +0 -86
  257. package/lib/core/base-handler.d.ts +0 -31
  258. package/lib/core/constants.d.ts +0 -31
  259. package/lib/core/current-invoke.d.ts +0 -48
  260. package/lib/core/event-body.d.ts +0 -21
  261. package/lib/core/headers.d.ts +0 -47
  262. package/lib/core/index.d.ts +0 -11
  263. package/lib/core/is-binary.d.ts +0 -72
  264. package/lib/core/logger.d.ts +0 -67
  265. package/lib/core/no-op.d.ts +0 -7
  266. package/lib/core/optional.d.ts +0 -21
  267. package/lib/core/path.d.ts +0 -36
  268. package/lib/core/stream.d.ts +0 -20
  269. package/lib/frameworks/apollo-server/apollo-server.framework.d.ts +0 -71
  270. package/lib/frameworks/apollo-server/index.d.ts +0 -1
  271. package/lib/frameworks/body-parser/base-body-parser.framework.d.ts +0 -69
  272. package/lib/frameworks/body-parser/index.d.ts +0 -5
  273. package/lib/frameworks/body-parser/json-body-parser.framework.d.ts +0 -26
  274. package/lib/frameworks/body-parser/raw-body-parser.framework.d.ts +0 -26
  275. package/lib/frameworks/body-parser/text-body-parser.framework.d.ts +0 -26
  276. package/lib/frameworks/body-parser/urlencoded-body-parser.framework.d.ts +0 -26
  277. package/lib/frameworks/cors/cors.framework.d.ts +0 -78
  278. package/lib/frameworks/cors/index.d.ts +0 -1
  279. package/lib/frameworks/deepkit/http-deepkit.framework.d.ts +0 -17
  280. package/lib/frameworks/deepkit/index.d.ts +0 -1
  281. package/lib/frameworks/express/express.framework.d.ts +0 -16
  282. package/lib/frameworks/express/index.d.ts +0 -1
  283. package/lib/frameworks/fastify/fastify.framework.d.ts +0 -16
  284. package/lib/frameworks/fastify/helpers/no-op-content-parser.d.ts +0 -13
  285. package/lib/frameworks/fastify/index.d.ts +0 -1
  286. package/lib/frameworks/hapi/hapi.framework.d.ts +0 -16
  287. package/lib/frameworks/hapi/index.d.ts +0 -1
  288. package/lib/frameworks/koa/index.d.ts +0 -1
  289. package/lib/frameworks/koa/koa.framework.d.ts +0 -16
  290. package/lib/frameworks/lazy/index.d.ts +0 -1
  291. package/lib/frameworks/lazy/lazy.framework.d.ts +0 -55
  292. package/lib/frameworks/trpc/index.d.ts +0 -1
  293. package/lib/frameworks/trpc/trpc.framework.d.ts +0 -155
  294. package/lib/handlers/aws/aws-stream.handler.d.ts +0 -83
  295. package/lib/handlers/aws/index.d.ts +0 -1
  296. package/lib/handlers/azure/azure.handler.d.ts +0 -45
  297. package/lib/handlers/azure/index.d.ts +0 -1
  298. package/lib/handlers/base/index.d.ts +0 -1
  299. package/lib/handlers/base/raw-request.d.ts +0 -30
  300. package/lib/handlers/default/default.handler.d.ts +0 -87
  301. package/lib/handlers/default/index.d.ts +0 -1
  302. package/lib/handlers/digital-ocean/digital-ocean.handler.d.ts +0 -16
  303. package/lib/handlers/digital-ocean/index.d.ts +0 -1
  304. package/lib/handlers/firebase/http-firebase-v2.handler.d.ts +0 -26
  305. package/lib/handlers/firebase/http-firebase.handler.d.ts +0 -18
  306. package/lib/handlers/firebase/index.d.ts +0 -2
  307. package/lib/handlers/gcp/gcp.handler.d.ts +0 -25
  308. package/lib/handlers/gcp/index.d.ts +0 -1
  309. package/lib/handlers/huawei/http-huawei.handler.d.ts +0 -59
  310. package/lib/handlers/huawei/index.d.ts +0 -1
  311. package/lib/index.d.ts +0 -5
  312. package/lib/network/index.d.ts +0 -4
  313. package/lib/network/request.d.ts +0 -44
  314. package/lib/network/response-stream.d.ts +0 -41
  315. package/lib/network/response.d.ts +0 -48
  316. package/lib/network/utils.d.ts +0 -7
  317. package/lib/resolvers/aws-context/aws-context.resolver.d.ts +0 -18
  318. package/lib/resolvers/aws-context/index.d.ts +0 -1
  319. package/lib/resolvers/callback/callback.resolver.d.ts +0 -23
  320. package/lib/resolvers/callback/index.d.ts +0 -1
  321. package/lib/resolvers/dummy/dummy.resolver.d.ts +0 -13
  322. package/lib/resolvers/dummy/index.d.ts +0 -1
  323. package/lib/resolvers/promise/index.d.ts +0 -1
  324. package/lib/resolvers/promise/promise.resolver.d.ts +0 -13
  325. package/lib/serverless-adapter.d.ts +0 -118
@@ -1,55 +0,0 @@
1
- /// <reference types="node" />
2
- import { IncomingMessage, ServerResponse } from 'http';
3
- import { FrameworkContract } from '../../contracts';
4
- import { ILogger } from '../../core';
5
- /**
6
- * The framework that asynchronously instantiates your application and forwards the request to the framework as quickly as possible.
7
- *
8
- * @example
9
- * ```typescript
10
- * import express from 'express';
11
- * import { ServerlessAdapter } from '@h4ad/serverless-adapter';
12
- * import { ExpressFramework } from '@h4ad/serverless-adapter/lib/frameworks/express';
13
- * import { LazyFramework } from '@h4ad/serverless-adapter/lib/frameworks/lazy';
14
- *
15
- * const expressFramework = new ExpressFramework();
16
- * const factory = async () => {
17
- * const app = express();
18
- *
19
- * // do some asynchronous stuffs like create the database;
20
- * await new Promise(resolve => setTimeout(resolve, 100);
21
- *
22
- * return app;
23
- * };
24
- * const framework = new LazyFramework(expressFramework, factory);
25
- *
26
- * export const handler = ServerlessAdapter.new(null)
27
- * .setFramework(framework)
28
- * // set other configurations and then build
29
- * .build();
30
- * ```
31
- *
32
- * @breadcrumb Frameworks / LazyFramework
33
- * @public
34
- */
35
- export declare class LazyFramework<TApp> implements FrameworkContract<null> {
36
- protected readonly framework: FrameworkContract<TApp>;
37
- protected readonly factory: () => Promise<TApp>;
38
- protected readonly logger: ILogger;
39
- /**
40
- * Default Constructor
41
- */
42
- constructor(framework: FrameworkContract<TApp>, factory: () => Promise<TApp>, logger?: ILogger);
43
- /**
44
- * The cached version of the app
45
- */
46
- protected cachedApp?: TApp;
47
- /**
48
- * The delayed factory to create an instance of the app
49
- */
50
- protected readonly delayedFactory: Promise<void>;
51
- /**
52
- * {@inheritDoc}
53
- */
54
- sendRequest(app: null, request: IncomingMessage, response: ServerResponse): void;
55
- }
@@ -1 +0,0 @@
1
- export * from './trpc.framework';
@@ -1,155 +0,0 @@
1
- /// <reference types="node" />
2
- import { IncomingMessage, ServerResponse } from 'http';
3
- import type { AnyRouter, DataTransformer } from '@trpc/server';
4
- import { NodeHTTPCreateContextFnOptions, NodeHTTPHandlerOptions } from '@trpc/server/adapters/node-http';
5
- import { SingleValueHeaders } from '../../@types';
6
- import { FrameworkContract } from '../../contracts';
7
- /**
8
- * The transformer that is responsible to transform buffer's input to javascript objects
9
- *
10
- * @deprecated You should use {@link JsonBodyParserFramework} instead, is more reliable and enable you to use transformer of trpc to other things.
11
- * @breadcrumb Frameworks / TrpcFramework
12
- * @public
13
- */
14
- export declare class BufferToJSObjectTransformer implements DataTransformer {
15
- /**
16
- * Deserialize unknown values to javascript objects
17
- *
18
- * @param value - The value to be deserialized
19
- */
20
- deserialize(value?: unknown): any;
21
- /**
22
- * The value to be serialized, do nothing because tRPC can handle.
23
- *
24
- * @param value - The value to be serialized
25
- */
26
- serialize(value: any): any;
27
- }
28
- /**
29
- * The context created by this library that allows getting some information from the request and setting the status and header of the response.
30
- *
31
- * @breadcrumb Frameworks / TrpcFramework
32
- * @public
33
- */
34
- export interface TrpcAdapterBaseContext {
35
- /**
36
- * The request object that will be forward to your app
37
- */
38
- request: IncomingMessage;
39
- /**
40
- * The response object that will be forward to your app to output the response
41
- */
42
- response: ServerResponse;
43
- /**
44
- * The method to set response status.
45
- *
46
- * @param statusCode - The response status that you want
47
- */
48
- setStatus(statusCode: number): void;
49
- /**
50
- * The method to set some header in the response
51
- *
52
- * @param name - The name of the header
53
- * @param value - The value to be set in the header
54
- */
55
- setHeader(name: string, value: number | string): void;
56
- /**
57
- * The method to remove some header from the response
58
- *
59
- * @param name - The name of the header
60
- */
61
- removeHeader(name: string): void;
62
- /**
63
- * The method to return the value of some header from the request
64
- *
65
- * @param name - The name of the header
66
- */
67
- getHeader(name: string): string | undefined;
68
- /**
69
- * The method to return the request headers
70
- */
71
- getHeaders(): SingleValueHeaders;
72
- /**
73
- * The method to return user's address
74
- */
75
- getIp(): string | undefined;
76
- /**
77
- * The method to return the URL called
78
- */
79
- getUrl(): string | undefined;
80
- /**
81
- * The method to return the HTTP Method in the request
82
- */
83
- getMethod(): string | undefined;
84
- }
85
- /**
86
- * This is the context merged between {@link TrpcAdapterBaseContext} and the {@link TContext} that you provided.
87
- *
88
- * This context will be merged with the context you created with `createContext` inside {@link TrpcFrameworkOptions}.
89
- * So to make the type work, just send the properties you've added inside {@link TContext}.
90
- *
91
- * @example
92
- * ```typescript
93
- * type MyCustomContext = { user: { name: string } };
94
- * type TrpcContext = TrpcAdapterContext<MyCustomContext>; // your final context type to put inside trpc.router
95
- * ```
96
- *
97
- * @breadcrumb Frameworks / TrpcFramework
98
- * @public
99
- */
100
- export declare type TrpcAdapterContext<TContext> = TContext & TrpcAdapterBaseContext;
101
- /**
102
- * The options to customize the {@link TrpcFramework}
103
- *
104
- * @breadcrumb Frameworks / TrpcFramework
105
- * @public
106
- */
107
- export declare type TrpcFrameworkOptions<TContext> = Omit<NodeHTTPHandlerOptions<AnyRouter<TContext>, IncomingMessage, ServerResponse>, 'router' | 'createContext'> & {
108
- createContext?: (opts: NodeHTTPCreateContextFnOptions<IncomingMessage, ServerResponse>) => Omit<TContext, keyof TrpcAdapterBaseContext> | Promise<Omit<TContext, keyof TrpcAdapterBaseContext>>;
109
- };
110
- /**
111
- * The framework that forwards requests to TRPC handler
112
- *
113
- * @breadcrumb Frameworks / TrpcFramework
114
- * @public
115
- */
116
- export declare class TrpcFramework<TContext extends TrpcAdapterBaseContext> implements FrameworkContract<AnyRouter<TContext>> {
117
- protected readonly options?: TrpcFrameworkOptions<TContext> | undefined;
118
- /**
119
- * Default constructor
120
- */
121
- constructor(options?: TrpcFrameworkOptions<TContext> | undefined);
122
- /**
123
- * {@inheritDoc}
124
- */
125
- sendRequest(app: AnyRouter<TContext>, request: IncomingMessage, response: ServerResponse): void;
126
- /**
127
- * Get safe url that can be used inside Trpc.
128
- *
129
- * @example
130
- * ```typescript
131
- * const url = getSafeUrlForTrpc('/users?input=hello');
132
- * console.log(url); // users
133
- * ```
134
- *
135
- * @param request - The request object that will be forward to your app
136
- */
137
- protected getSafeUrlForTrpc(request: IncomingMessage): string;
138
- /**
139
- * Merge the default context ({@link TrpcAdapterContext}) with the context created by the user.
140
- *
141
- * @param createContextOptions - The options sent by trpc to create the context
142
- */
143
- protected mergeDefaultContextWithOptionsContext(createContextOptions: NodeHTTPCreateContextFnOptions<IncomingMessage, ServerResponse>): TContext | Promise<TContext>;
144
- /**
145
- * Wraps the resolved context from the {@link TrpcFrameworkOptions} created with `createContext` and merge
146
- * with the {@link TrpcAdapterContext} generated by the library.
147
- *
148
- * @param resolvedContext - The context created with `createContext` inside {@link TrpcFrameworkOptions}
149
- * @param createContextOptions - The options sent by trpc to create the context
150
- */
151
- protected wrapResolvedContextWithDefaultContext(resolvedContext: TContext, createContextOptions: NodeHTTPCreateContextFnOptions<IncomingMessage, ServerResponse>): TContext;
152
- }
153
- export declare type __ΩTrpcAdapterBaseContext = any[];
154
- export declare type __ΩTrpcAdapterContext = any[];
155
- export declare type __ΩTrpcFrameworkOptions = any[];
@@ -1,83 +0,0 @@
1
- /// <reference types="node" />
2
- import { Writable } from 'stream';
3
- import type { APIGatewayProxyEventV2, Context } from 'aws-lambda';
4
- import type { APIGatewayProxyStructuredResultV2 } from 'aws-lambda/trigger/api-gateway-proxy';
5
- import { BinarySettings } from '../../@types';
6
- import { AdapterContract, AdapterRequest, FrameworkContract, ResolverContract, ServerlessHandler } from '../../contracts';
7
- import { BaseHandler, ILogger } from '../../core';
8
- export declare type AWSResponseStream = Writable;
9
- export declare type AWSStreamResponseMetadata = Pick<APIGatewayProxyStructuredResultV2, 'statusCode' | 'headers' | 'cookies'>;
10
- /**
11
- * The interface that describes the internal context used by the {@link AwsStreamHandler}
12
- *
13
- * @breadcrumb Handlers / AwsStreamHandler
14
- * @public
15
- */
16
- export declare type AWSStreamContext = {
17
- /**
18
- * The response stream provided by the serverless
19
- */
20
- response: AWSResponseStream;
21
- /**
22
- * The context provided by the serverless
23
- */
24
- context: Context;
25
- };
26
- /**
27
- * The class that implements a default serverless handler consisting of a function with event, context and callback parameters respectively
28
- *
29
- * @breadcrumb Handlers / AwsStreamHandler
30
- * @public
31
- */
32
- export declare class AwsStreamHandler<TApp> extends BaseHandler<TApp, APIGatewayProxyEventV2, AWSStreamContext, void, AWSStreamResponseMetadata, void> {
33
- /**
34
- * {@inheritDoc}
35
- */
36
- getHandler(app: TApp, framework: FrameworkContract<TApp>, adapters: AdapterContract<APIGatewayProxyEventV2, AWSStreamContext, AWSStreamResponseMetadata>[], resolverFactory: ResolverContract<unknown, unknown, unknown, unknown, unknown>, binarySettings: BinarySettings, respondWithErrors: boolean, log: ILogger): ServerlessHandler<Promise<void>>;
37
- /**
38
- * The hook executed on receive a request, before the request is being processed
39
- *
40
- * @param log - The instance of logger
41
- * @param event - The event sent by serverless
42
- * @param context - The context sent by serverless
43
- * @param binarySettings - The binary settings
44
- * @param respondWithErrors - Indicates whether the error stack should be included in the response or not
45
- */
46
- protected onReceiveRequest(log: ILogger, event: APIGatewayProxyEventV2, context: AWSStreamContext, binarySettings: BinarySettings, respondWithErrors: boolean): void;
47
- /**
48
- * The hook executed after resolve the adapter that will be used to handle the request and response
49
- *
50
- * @param log - The instance of logger
51
- * @param adapter - The adapter resolved
52
- */
53
- protected onResolveAdapter(log: ILogger, adapter: AdapterContract<APIGatewayProxyEventV2, AWSStreamContext, AWSStreamResponseMetadata>): void;
54
- /**
55
- * The hook executed after resolves the request values that will be sent to the framework
56
- *
57
- * @param log - The instance of logger
58
- * @param requestValues - The request values returned by the adapter
59
- */
60
- protected onResolveRequestValues(log: ILogger, requestValues: AdapterRequest): void;
61
- /**
62
- * The hook executed before sending response to the serverless with response from adapter
63
- *
64
- * @param log - The instance of logger
65
- * @param successResponse - The success response resolved by the adapter
66
- */
67
- protected onForwardResponseAdapterResponse(log: ILogger, successResponse: AWSStreamResponseMetadata): void;
68
- /**
69
- * The function to forward the event to the framework
70
- *
71
- * @param app - The instance of the app (express, hapi, etc...)
72
- * @param framework - The framework that will process requests
73
- * @param event - The event sent by serverless
74
- * @param context - The context sent by serverless
75
- * @param adapter - The adapter resolved to this event
76
- * @param log - The instance of logger
77
- * @param binarySettings - The binary settings
78
- */
79
- protected forwardRequestToFramework(app: TApp, framework: FrameworkContract<TApp>, event: APIGatewayProxyEventV2, context: AWSStreamContext, adapter: AdapterContract<APIGatewayProxyEventV2, AWSStreamContext, AWSStreamResponseMetadata>, binarySettings: BinarySettings, log: ILogger): Promise<void>;
80
- }
81
- export declare type __ΩAWSResponseStream = any[];
82
- export declare type __ΩAWSStreamResponseMetadata = any[];
83
- export declare type __ΩAWSStreamContext = any[];
@@ -1 +0,0 @@
1
- export * from './aws-stream.handler';
@@ -1,45 +0,0 @@
1
- import type { Context } from '@azure/functions';
2
- import { BinarySettings } from '../../@types';
3
- import { AdapterContract, FrameworkContract, ResolverContract, ServerlessHandler } from '../../contracts';
4
- import { ILogger } from '../../core';
5
- import { DefaultHandler } from '../default';
6
- /**
7
- * The options to customize {@link AzureHandler}
8
- *
9
- * @breadcrumb Handlers / AzureHandler
10
- * @public
11
- */
12
- export interface AzureHandlerOptions {
13
- /**
14
- * Indicates to use the context log instead console.log when logger is internal (created by the library)
15
- *
16
- * @defaultValue true
17
- */
18
- useContextLogWhenInternalLogger: boolean;
19
- }
20
- /**
21
- * The class that implements a serverless handler for Azure Function.
22
- *
23
- * When you don't specify a custom logger, the {@link Context} logger is used instead.
24
- *
25
- * @breadcrumb Handlers / AzureHandler
26
- * @public
27
- */
28
- export declare class AzureHandler<TApp, TEvent, TCallback, TResponse, TReturn> extends DefaultHandler<TApp, TEvent, Context, TCallback, TResponse, TReturn> {
29
- protected readonly options?: AzureHandlerOptions | undefined;
30
- /**
31
- * Default Constructor
32
- */
33
- constructor(options?: AzureHandlerOptions | undefined);
34
- /**
35
- * {@inheritDoc}
36
- */
37
- getHandler(app: TApp, framework: FrameworkContract<TApp>, adapters: AdapterContract<TEvent, Context, TResponse>[], resolverFactory: ResolverContract<TEvent, Context, TCallback, TResponse, TReturn>, binarySettings: BinarySettings, respondWithErrors: boolean, log: ILogger): ServerlessHandler<TReturn>;
38
- /**
39
- * Get the {@link ILogger} instance from logger of the context
40
- *
41
- * @param context - The Azure Context
42
- */
43
- protected createLoggerFromContext(context: Context): ILogger;
44
- }
45
- export declare type __ΩAzureHandlerOptions = any[];
@@ -1 +0,0 @@
1
- export * from './azure.handler';
@@ -1 +0,0 @@
1
- export * from './raw-request';
@@ -1,30 +0,0 @@
1
- /// <reference types="node" />
2
- import { IncomingMessage, ServerResponse } from 'http';
3
- import { FrameworkContract } from '../../contracts/index';
4
- import { ServerlessRequest } from '../../network/index';
5
- /**
6
- * The class that expose some methods to be used to get raw request from Express HTTP Request
7
- *
8
- * @breadcrumb Handlers / Base / RawRequest
9
- * @public
10
- */
11
- export declare abstract class RawRequest<TApp> {
12
- /**
13
- * The callback to when receive some request from external source
14
- *
15
- * @param app - The instance of the app
16
- * @param framework - The framework for the app
17
- */
18
- protected onRequestCallback(app: TApp, framework: FrameworkContract<TApp>): (req: IncomingMessage, res: ServerResponse) => void | Promise<void>;
19
- /**
20
- * Not sure why they think using Express instance with prebuilt middlewares was a good idea, but Firebase/GCP
21
- * decides to use `Express` and `body-parser` by default, so you don't get a raw request, instead, you get a modified version by
22
- * Express and also with the body parsed by `body-parser`.
23
- * If you use NestJS or Express it's awesome, but for the rest of the frameworks it's terrible!
24
- * That's why I have this method, just to try and create a raw request to be used and passed to the frameworks so they can handle the request
25
- * as if they received the request from the native http module.
26
- *
27
- * @param request - The Express request
28
- */
29
- protected getRequestFromExpressRequest(request: IncomingMessage): ServerlessRequest;
30
- }
@@ -1,87 +0,0 @@
1
- import { BinarySettings, SingleValueHeaders } from '../../@types';
2
- import { AdapterContract, AdapterRequest, FrameworkContract, ResolverContract, ServerlessHandler } from '../../contracts';
3
- import { BaseHandler, ILogger } from '../../core';
4
- import { ServerlessResponse } from '../../network';
5
- /**
6
- * The class that implements a default serverless handler consisting of a function with event, context and callback parameters respectively
7
- *
8
- * @breadcrumb Handlers / DefaultHandler
9
- * @public
10
- */
11
- export declare class DefaultHandler<TApp, TEvent, TContext, TCallback, TResponse, TReturn> extends BaseHandler<TApp, TEvent, TContext, TCallback, TResponse, TReturn> {
12
- /**
13
- * {@inheritDoc}
14
- */
15
- getHandler(app: TApp, framework: FrameworkContract<TApp>, adapters: AdapterContract<TEvent, TContext, TResponse>[], resolverFactory: ResolverContract<TEvent, TContext, TCallback, TResponse, TReturn>, binarySettings: BinarySettings, respondWithErrors: boolean, log: ILogger): ServerlessHandler<TReturn>;
16
- /**
17
- * The hook executed on receive a request, before the request is being processed
18
- *
19
- * @param log - The instance of logger
20
- * @param event - The event sent by serverless
21
- * @param context - The context sent by serverless
22
- * @param binarySettings - The binary settings
23
- * @param respondWithErrors - Indicates whether the error stack should be included in the response or not
24
- */
25
- protected onReceiveRequest(log: ILogger, event: TEvent, context: TContext, binarySettings: BinarySettings, respondWithErrors: boolean): void;
26
- /**
27
- * The hook executed after resolve the adapter that will be used to handle the request and response
28
- *
29
- * @param log - The instance of logger
30
- * @param adapter - The adapter resolved
31
- */
32
- protected onResolveAdapter(log: ILogger, adapter: AdapterContract<TEvent, TContext, TResponse>): void;
33
- /**
34
- * The hook executed after resolves the request values that will be sent to the framework
35
- *
36
- * @param log - The instance of logger
37
- * @param requestValues - The request values returned by the adapter
38
- */
39
- protected onResolveRequestValues(log: ILogger, requestValues: AdapterRequest): void;
40
- /**
41
- * The hook executed after handling the response sent by the framework
42
- *
43
- * @param log - The instance of logger
44
- * @param response - The response sent by the framework
45
- */
46
- protected onResolveForwardedResponseToFramework(log: ILogger, response: ServerlessResponse): void;
47
- /**
48
- * The hook executed before sending response to the serverless
49
- *
50
- * @param log - The instance of logger
51
- * @param statusCode - The status code of the response
52
- * @param body - The body of the response
53
- * @param headers - The headers of the response
54
- * @param isBase64Encoded - Indicates whether the response was encoded as binary or not
55
- */
56
- protected onForwardResponse(log: ILogger, statusCode: number, body: string, headers: SingleValueHeaders, isBase64Encoded: boolean): void;
57
- /**
58
- * The hook executed before sending response to the serverless with response from adapter
59
- *
60
- * @param log - The instance of logger
61
- * @param successResponse - The success response resolved by the adapter
62
- * @param body - The body of the response sent by the framework
63
- */
64
- protected onForwardResponseAdapterResponse(log: ILogger, successResponse: TResponse, body: string): void;
65
- /**
66
- * The function to forward the event to the framework
67
- *
68
- * @param app - The instance of the app (express, hapi, etc...)
69
- * @param framework - The framework that will process requests
70
- * @param event - The event sent by serverless
71
- * @param context - The context sent by serverless
72
- * @param adapter - The adapter resolved to this event
73
- * @param log - The instance of logger
74
- * @param binarySettings - The binary settings
75
- */
76
- protected forwardRequestToFramework(app: TApp, framework: FrameworkContract<TApp>, event: TEvent, context: TContext, adapter: AdapterContract<TEvent, TContext, TResponse>, binarySettings: BinarySettings, log: ILogger): Promise<TResponse>;
77
- /**
78
- * The function to forward the response back to the serverless
79
- *
80
- * @param event - The event sent by serverless
81
- * @param response - The response of the framework
82
- * @param adapter - The adapter resolved to this event
83
- * @param binarySettings - The binary settings
84
- * @param log - The instance of logger
85
- */
86
- protected forwardResponse(event: TEvent, response: ServerlessResponse, adapter: AdapterContract<TEvent, TContext, TResponse>, binarySettings: BinarySettings, log: ILogger): TResponse;
87
- }
@@ -1 +0,0 @@
1
- export * from './default.handler';
@@ -1,16 +0,0 @@
1
- import { BinarySettings } from '../../@types';
2
- import { AdapterContract, FrameworkContract, ResolverContract, ServerlessHandler } from '../../contracts';
3
- import { ILogger } from '../../core';
4
- import { DefaultHandler } from '../default';
5
- /**
6
- * The class that implements a serverless handler for Digital Ocean Functions.
7
- *
8
- * @breadcrumb Handlers / DigitalOceanHandler
9
- * @public
10
- */
11
- export declare class DigitalOceanHandler<TApp, TEvent, TResponse, TReturn> extends DefaultHandler<TApp, TEvent, void, void, TResponse, TReturn> {
12
- /**
13
- * {@inheritDoc}
14
- */
15
- getHandler(app: TApp, framework: FrameworkContract<TApp>, adapters: AdapterContract<TEvent, void, TResponse>[], resolverFactory: ResolverContract<TEvent, void, void, TResponse, TReturn>, binarySettings: BinarySettings, respondWithErrors: boolean, log: ILogger): ServerlessHandler<TReturn>;
16
- }
@@ -1 +0,0 @@
1
- export * from './digital-ocean.handler';
@@ -1,26 +0,0 @@
1
- import { https } from 'firebase-functions/v2';
2
- import { FrameworkContract, HandlerContract } from '../../contracts';
3
- import { RawRequest } from '../base';
4
- /**
5
- * The class that implements a handler for Firebase Https Events
6
- *
7
- * @remarks Read more about Https Events {@link https://firebase.google.com/docs/functions/http-events | here}
8
- *
9
- * @breadcrumb Handlers / HttpFirebaseHandler
10
- * @public
11
- */
12
- export declare class HttpFirebaseV2Handler<TApp> extends RawRequest<TApp> implements HandlerContract<TApp, never, never, never, void, void | Promise<void>> {
13
- protected readonly options?: https.HttpsOptions | undefined;
14
- /**
15
- * Construtor padrão
16
- */
17
- constructor(options?: https.HttpsOptions | undefined);
18
- /**
19
- * {@inheritDoc}
20
- */
21
- getHandler(app: TApp, framework: FrameworkContract<TApp>): ReturnType<HttpFirebaseV2Handler<TApp>['onRequestCallback']>;
22
- /**
23
- * Wrapper method around onRequest for better testability
24
- */
25
- protected onRequestWithOptions(options: https.HttpsOptions, callback: ReturnType<HttpFirebaseV2Handler<TApp>['onRequestCallback']>): ReturnType<HttpFirebaseV2Handler<TApp>['onRequestCallback']>;
26
- }
@@ -1,18 +0,0 @@
1
- /// <reference types="node" />
2
- import { IncomingMessage, ServerResponse } from 'http';
3
- import { FrameworkContract, HandlerContract } from '../../contracts';
4
- import { RawRequest } from '../base';
5
- /**
6
- * The class that implements a handler for Firebase Https Events
7
- *
8
- * @remarks Read more about Https Events {@link https://firebase.google.com/docs/functions/http-events | here}
9
- *
10
- * @breadcrumb Handlers / HttpFirebaseHandler
11
- * @public
12
- */
13
- export declare class HttpFirebaseHandler<TApp> extends RawRequest<TApp> implements HandlerContract<TApp, never, never, never, void, void | Promise<void>> {
14
- /**
15
- * {@inheritDoc}
16
- */
17
- getHandler(app: TApp, framework: FrameworkContract<TApp>): (req: IncomingMessage, res: ServerResponse) => void | Promise<void>;
18
- }
@@ -1,2 +0,0 @@
1
- export * from './http-firebase.handler';
2
- export * from './http-firebase-v2.handler';
@@ -1,25 +0,0 @@
1
- /// <reference types="node" />
2
- import { IncomingMessage, ServerResponse } from 'http';
3
- import { FrameworkContract, HandlerContract } from '../../contracts';
4
- import { RawRequest } from '../base/index';
5
- /**
6
- * The class that implements a handler for GCP Http Functions
7
- *
8
- * @remarks Read more about Http Cloud Function {@link https://cloud.google.com/functions/docs/create-deploy-http-nodejs | here}
9
- *
10
- * @breadcrumb Handlers / GCPHandler
11
- * @public
12
- */
13
- export declare class GCPHandler<TApp> extends RawRequest<TApp> implements HandlerContract<TApp, never, never, never, void, void | Promise<void>> {
14
- protected readonly name: string;
15
- /**
16
- * Default Constructor
17
- *
18
- * @param name - The name of this function, should be the during deploy.
19
- */
20
- constructor(name: string);
21
- /**
22
- * {@inheritDoc}
23
- */
24
- getHandler(app: TApp, framework: FrameworkContract<TApp>): (req: IncomingMessage, res: ServerResponse) => void | Promise<void>;
25
- }
@@ -1 +0,0 @@
1
- export * from './gcp.handler';
@@ -1,59 +0,0 @@
1
- /// <reference types="node" />
2
- import * as http from 'http';
3
- import { RequestListener } from 'http';
4
- import { BinarySettings } from '../../@types';
5
- import { AdapterContract, FrameworkContract, HandlerContract, ResolverContract, ServerlessHandler } from '../../contracts';
6
- import { ILogger } from '../../core';
7
- /**
8
- * The default port that huawei will proxy the request to your framework
9
- *
10
- * {@link https://support.huaweicloud.com/intl/en-us/ae-ad-1-usermanual-functiongraph/functiongraph_01_1442.html#functiongraph_01_1442__li194597302096 | Reference}
11
- *
12
- * @breadcrumb Handlers / HttpHuaweiHandler
13
- * @public
14
- */
15
- export declare const DEFAULT_HUAWEI_LISTEN_PORT: number;
16
- /**
17
- * The options to customize {@link HttpHuaweiHandler}
18
- *
19
- * @breadcrumb Handlers / HttpHuaweiHandler
20
- * @public
21
- */
22
- export declare type HttpHuaweiHandlerOptions = {
23
- /**
24
- * @defaultValue {@link DEFAULT_HUAWEI_LISTEN_PORT}
25
- */
26
- port?: number;
27
- /**
28
- * The factory to create a http server to use to listen huawei requests
29
- */
30
- httpServerFactory?: (requestListener: RequestListener) => http.Server;
31
- };
32
- /**
33
- * The class that implements a huawei serverless handler with http function that exposes a http server in specific port.
34
- *
35
- * In this Handler, you don't need to specific resolver and adapter, so you can use DummyAdapter and DummyResolver instead.
36
- *
37
- * @see https://support.huaweicloud.com/intl/en-us/ae-ad-1-usermanual-functiongraph/functiongraph_01_1442.html#functiongraph_01_1442__li194597302096
38
- *
39
- * @breadcrumb Handlers / HttpHuaweiHandler
40
- * @public
41
- */
42
- export declare class HttpHuaweiHandler<TApp> implements HandlerContract<TApp, void, void, void, void, Promise<void>> {
43
- protected readonly options?: HttpHuaweiHandlerOptions | undefined;
44
- /**
45
- * Construtor padrão
46
- */
47
- constructor(options?: HttpHuaweiHandlerOptions | undefined);
48
- /**
49
- * {@inheritDoc}
50
- */
51
- getHandler(app: TApp, framework: FrameworkContract<TApp>, _: AdapterContract<void, void, void>[], __: ResolverContract<void, void, void, void, void>, binarySettings: BinarySettings, respondWithErrors: boolean, log: ILogger): ServerlessHandler<Promise<void>>;
52
- /**
53
- * The method that creates the instance of http server
54
- *
55
- * @param requestListener - O método que lidará com as requisições recebidas
56
- */
57
- protected createHttpServer(requestListener: RequestListener): http.Server;
58
- }
59
- export declare type __ΩHttpHuaweiHandlerOptions = any[];
@@ -1 +0,0 @@
1
- export * from './http-huawei.handler';
package/lib/index.d.ts DELETED
@@ -1,5 +0,0 @@
1
- export * from './@types';
2
- export * from './contracts';
3
- export * from './core';
4
- export * from './network';
5
- export * from './serverless-adapter';
@@ -1,4 +0,0 @@
1
- export * from './request';
2
- export * from './response';
3
- export * from './response-stream';
4
- export * from './utils';