1.1.5 • Published 6 months ago

@types/nut-pipe v1.1.5

Weekly downloads
-
License
MIT
Repository
github
Last release
6 months ago

Installation

npm install --save @types/nut-pipe

Summary

This package contains type definitions for nut-pipe (https://github.com/nodejs-projects-kenanhancer/nut-pipe).

Details

Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/nut-pipe.

index.d.ts

// Type definitions for nut-pipe 1.1
// Project: https://github.com/nodejs-projects-kenanhancer/nut-pipe
// Definitions by: kenan hancer <https://github.com/kenanhancer>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped

import { APIGatewayProxyEventV2, APIGatewayProxyStructuredResultV2, Context, APIGatewayProxyHandlerV2 } from "aws-lambda";

export type AsyncBasicHandler<TContext = any, TResult = any> = (context: TContext) => Promise<TResult | Error>;

export type AsyncBasicMiddleware<T extends AsyncBasicHandler = AsyncBasicHandler> =
    T extends AsyncBasicHandler<infer TContext, infer TResult> ?
    (context: TContext, next: AsyncBasicHandler<TContext, TResult>) => Promise<TResult> :
    never;

export type AsyncLambdaHandler<TEvent = APIGatewayProxyEventV2, TContext = Context, TResult = APIGatewayProxyStructuredResultV2> =
    (event: TEvent, context: TContext) => Promise<TResult | Error>;

export type AsyncLambdaMiddleware<T extends AsyncLambdaHandler = AsyncLambdaHandler> =
    T extends AsyncLambdaHandler<infer TEvent, infer TContext, infer TResult> ?
    (event: TEvent, context: TContext, next: T) => Promise<TResult | Error> :
    never;

export type AsyncBasicMiddlewareWithServices<T extends AsyncBasicHandler = AsyncBasicHandler> =
    T extends AsyncBasicHandler<infer TContext, infer TResult> ?
    (context: TContext, services: Record<string, any>, next: AsyncBasicHandler<TContext, TResult>) => Promise<TResult | Error> :
    never;

export type AsyncLambdaMiddlewareWithServices<T extends AsyncLambdaHandler = AsyncLambdaHandler> =
    T extends AsyncLambdaHandler<infer TEvent, infer TContext, infer TResult> ?
    (event: TEvent, context: TContext, services: Record<string, any>, next: T) => Promise<TResult | Error> :
    never;

export type AsyncHandler = AsyncBasicHandler & AsyncLambdaHandler;

export type AsyncMiddleware<T = never> =
    AsyncBasicMiddleware |
    AsyncBasicMiddlewareWithServices |
    AsyncLambdaMiddleware |
    AsyncLambdaMiddlewareWithServices |
    T;

export function buildPipeline(functions: Array<AsyncMiddleware<any>>, services?: Record<string, any>, index?: number): AsyncHandler;

Additional Details

  • Last updated: Tue, 07 Sep 2021 19:31:24 GMT
  • Dependencies: @types/aws-lambda
  • Global values: none

Credits

These definitions were written by kenan hancer.

1.1.5

6 months ago

1.1.4

7 months ago

1.1.3

8 months ago

1.1.2

3 years ago

1.1.1

3 years ago

1.1.0

3 years ago