import { Metadata } from '@typemon/reflection'; import { Constructor, Container, Identifier } from '@typemon/dependency-injection'; import Lambda from 'aws-lambda'; import { Controller } from '../controller'; import { Handler } from '../handler'; import { GlobalOptions } from '../global-options'; export declare class Runner { protected readonly target: Constructor; protected readonly propertyKey: string; protected readonly globalOptions: GlobalOptions; protected readonly controllerMetadata: Metadata; protected readonly controllerOptions: Controller.Options; protected readonly handlerMetadata: Metadata; protected readonly handlerOptions: Handler.Options; protected readonly dependenciesContainer: Container; protected readonly parametersContainer: Container; constructor({ event, context, target, propertyKey, globalOptions }: Runner.Context); private execute; private resolveParameter; private resolveParameters; private executeMiddleware; private executeMiddlewares; private executeHandler; protected getParameter(identifier: Identifier, _: Metadata): Promise; protected generateResult(_: boolean, output?: any): Promise; run(): Promise; } export declare namespace Runner { interface Context { readonly event: any; readonly context: Lambda.Context; readonly target: Constructor; readonly propertyKey: string; readonly globalOptions: GlobalOptions; } }