Skip to content

Commit 56efea1

Browse files
committed
Fix generics
1 parent 62e62ba commit 56efea1

File tree

1 file changed

+9
-9
lines changed

1 file changed

+9
-9
lines changed

src/index.ts

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,16 @@ import ShallotAWSSocketJsonBodyParser, {
88
TShallotJSONBodyParserOptions,
99
} from './json-body-parser';
1010

11-
export type WebSocketRequestContext<TAuthorizer = unknown> =
11+
export type WebSocketRequestContext<TAuthorizer extends RequestDataBase = unknown> =
1212
APIGatewayProxyEvent['requestContext'] & {
1313
connectionId: string;
1414
authorizer: TAuthorizer;
1515
};
1616

17-
export type APIGatewayWebSocketEvent<TAuthorizer = unknown> = APIGatewayProxyEvent & {
18-
requestContext: WebSocketRequestContext<TAuthorizer>;
19-
};
17+
export type APIGatewayWebSocketEvent<TAuthorizer extends RequestDataBase = unknown> =
18+
APIGatewayProxyEvent & {
19+
requestContext: WebSocketRequestContext<TAuthorizer>;
20+
};
2021

2122
type ParsedJSON = Record<string | number | symbol, unknown>;
2223
export type RequestDataBase = ParsedJSON | unknown;
@@ -30,7 +31,7 @@ export type TShallotSocketEvent<
3031
TPathParameters extends RequestDataBase = unknown,
3132
THeaders extends RequestDataBase = unknown,
3233
TBody extends RequestDataBase = unknown,
33-
TAuthorizer = unknown
34+
TAuthorizer extends RequestDataBase = unknown
3435
> = Omit<
3536
Omit<
3637
Omit<Omit<APIGatewayWebSocketEvent<TAuthorizer>, 'body'>, 'queryStringParameters'>,
@@ -44,15 +45,14 @@ export type TShallotSocketEvent<
4445
body?: TBody;
4546
};
4647

47-
type TShallotSocketHandler = (
48-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
49-
handler: ShallotRawHandler<any>,
48+
type TShallotSocketHandler<TEvent extends TShallotSocketEvent = TShallotSocketEvent> = (
49+
handler: ShallotRawHandler<TEvent>,
5050
successStatusCode?: number,
5151
middlewareOpts?: {
5252
HttpErrorHandlerOpts?: TShallotErrorHandlerOptions;
5353
HttpJsonBodyParserOpts?: TShallotJSONBodyParserOptions;
5454
}
55-
) => ShallotAWSHandler<TShallotSocketEvent>;
55+
) => ShallotAWSHandler<TEvent>;
5656

5757
const ShallotSocketWrapper: TShallotSocketHandler = (
5858
handler,

0 commit comments

Comments
 (0)