import { RouteMetadata } from '@webpieces/core-util'; /** * Metadata about the method being invoked. * Passed to filters and contains request information. * * MethodMeta is DTO-only - it does NOT contain Express req/res, nor the raw headers. The raw * inbound request (headers/method/path) lives on the transport-neutral {@link HttpRequest} in * RequestContext (read via `RequestContext.getRequest()`); MethodMeta carries only the typed * body + route/auth metadata that flow as the chain's call argument. * * It is the meta type every `Filter` is parameterized over. It lives in * @webpieces/http-routing and is express-free, so filter authors reference it without pulling * in any express dependency. * * Fields: * - routeMeta: Static route information (httpMethod, path, methodName, authMeta) * - requestDto: The deserialized request body * - metadata: Request-scoped data for filters to communicate * * Auth mode lives on {@link RouteMetadata.authMeta} (the one source of truth for fixed route * metadata); read it via `methodMeta.routeMeta.authMeta`. MethodMeta itself carries only the * static route reference + the request-scoped body/bag. */ export declare class MethodMeta { /** * Route metadata (httpMethod, path, methodName, parameterTypes) */ routeMeta: RouteMetadata; /** * The deserialized request DTO. */ requestDto?: unknown; /** * Additional metadata for storing request-scoped data. * Used by filters to pass data to other filters/controllers. */ metadata: Map; constructor(routeMeta: RouteMetadata, requestDto?: unknown, metadata?: Map); /** * Get the HTTP method (convenience accessor). */ get httpMethod(): string; /** * Get the request path (convenience accessor). */ get path(): string; /** * Get the method name (convenience accessor). */ get methodName(): string; }