import { AbsoluteLocation, HandlerOptions, MiddlewareType, Priority, RelativeLocation, Step } from "@smithy/types";
export interface MiddlewareEntry extends HandlerOptions {
middleware: MiddlewareType;
}
export interface AbsoluteMiddlewareEntry extends MiddlewareEntry, AbsoluteLocation {
step: Step;
priority: Priority;
}
export interface RelativeMiddlewareEntry extends MiddlewareEntry, RelativeLocation {
}
export type Normalized, Input extends object = {}, Output extends object = {}> = T & {
after: Normalized, Input, Output>[];
before: Normalized, Input, Output>[];
};
export interface NormalizedRelativeEntry extends HandlerOptions {
step: Step;
middleware: MiddlewareType;
next?: NormalizedRelativeEntry;
prev?: NormalizedRelativeEntry;
priority: null;
}
export type NamedMiddlewareEntriesMap = Record>;