Skip to content

Commit 3dc90d4

Browse files
author
Emily Zhang
committed
fix: builder handler types, thanks for pairing with me matt kane :)
1 parent d74b2b6 commit 3dc90d4

File tree

2 files changed

+8
-14
lines changed

2 files changed

+8
-14
lines changed

src/function/handler.ts

+6-12
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,14 @@ import type { Context } from './context'
22
import type { Event } from './event'
33
import type { Response, BuilderResponse } from './response'
44

5-
export interface HandlerCallback {
5+
export interface HandlerCallback<TResponse> {
66
// eslint-disable-next-line @typescript-eslint/no-explicit-any
7-
(error: any, response: Response): void
7+
(error: any, response: TResponse): void
88
}
99

10-
export interface Handler {
11-
(event: Event, context: Context, callback: HandlerCallback): void | Response | Promise<Response>
10+
interface BaseHandler<TResponse> {
11+
(event: Event, context: Context, callback: HandlerCallback<TResponse>): void | TResponse | Promise<TResponse>
1212
}
1313

14-
export interface BuilderCallback {
15-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
16-
(error: any, response: BuilderResponse): void
17-
}
18-
19-
export interface BuilderHandler {
20-
(event: Event, context: Context, callback: BuilderCallback): void | BuilderResponse | Promise<BuilderResponse>
21-
}
14+
export type Handler = BaseHandler<Response>
15+
export type BuilderHandler = BaseHandler<BuilderResponse>

src/lib/builder.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import isPromise from 'is-promise'
22

3-
import { BuilderHandler } from '../function/handler'
3+
import { BuilderHandler, Handler } from '../function/handler'
44
import { BuilderResponse } from '../function/response'
55

66
import { BUILDER_FUNCTIONS_FLAG, HTTP_STATUS_METHOD_NOT_ALLOWED, HTTP_STATUS_OK, METADATA_VERSION } from './consts'
@@ -18,7 +18,7 @@ const augmentResponse = (response: BuilderResponse) => {
1818
}
1919

2020
const wrapHandler =
21-
(handler: BuilderHandler): BuilderHandler =>
21+
(handler: BuilderHandler): Handler =>
2222
// eslint-disable-next-line promise/prefer-await-to-callbacks
2323
(event, context, callback) => {
2424
if (event.httpMethod !== 'GET' && event.httpMethod !== 'HEAD') {

0 commit comments

Comments
 (0)