diff --git a/packages/commons/src/index.ts b/packages/commons/src/index.ts index b8269d62ea..526867e0b4 100644 --- a/packages/commons/src/index.ts +++ b/packages/commons/src/index.ts @@ -1,3 +1,4 @@ export * from './utils/lambda'; +export * from './utils/middy'; export * as ContextExamples from './tests/resources/contexts'; export * as Events from './tests/resources/events'; \ No newline at end of file diff --git a/packages/commons/src/utils/middy/MiddyInterfaces.ts b/packages/commons/src/utils/middy/MiddyInterfaces.ts new file mode 100644 index 0000000000..47dc11906f --- /dev/null +++ b/packages/commons/src/utils/middy/MiddyInterfaces.ts @@ -0,0 +1,19 @@ +import { Context } from 'aws-lambda'; + +interface MiddyLikeRequest { + event: TEvent + context: TContext + response: TResult | null + error: TErr | null + internal: { + [key: string]: unknown + } +} + +declare type MiddlewareFn = (request: MiddyLikeRequest) => unknown; + +export interface MiddyLikeMiddlewareObj { + before?: MiddlewareFn + after?: MiddlewareFn + onError?: MiddlewareFn +} \ No newline at end of file diff --git a/packages/commons/src/utils/middy/index.ts b/packages/commons/src/utils/middy/index.ts new file mode 100644 index 0000000000..732c274cf8 --- /dev/null +++ b/packages/commons/src/utils/middy/index.ts @@ -0,0 +1 @@ +export * from './MiddyInterfaces'; \ No newline at end of file