UNPKG

cds-routing-handlers

Version:

Package to route and implement CDS handlers via a class based approach in Typescript.

201 lines (200 loc) 6.24 kB
import { IHandlerMetadataArgs } from "../metadata/args/IHandlerMetadataArgs"; import { IActionMetadataArgs } from "../metadata/args/IActionMetadataArgs"; import { IRejectMetadataArgs } from "../metadata/args/IRejectMetadataArgs"; import { IParamMetadataArgs } from "../metadata/args/IParamMetadataArgs"; import { IUseMetadataArgs } from "../metadata/args/IUseMetadataArgs"; import { IMiddlewareMetadataArgs } from "../metadata/args/IMiddlewareMetadataArgs"; import { IUserCheckerMetadataArgs } from "../metadata/args/IUserCheckerMetadataArgs"; /** * Metadata arguments storage. * * @export * @class MetadataArgsStorage */ export declare class MetadataArgsStorage { /** * Handler metadata arguments. * * @private * @type {IHandlerMetadataArgs[]} * @memberof MetadataArgsStorage */ private handler; /** * Middleware metadata arguments. * * @private * @type {IMiddlewareMetadataArgs[]} * @memberof MetadataArgsStorage */ private middlewares; /** * Registerd middleware usage metadata args. * * @private * @type {IUseMetadataArgs[]} * @memberof MetadataArgsStorage */ private uses; /** * Action metadata arguments. * * @private * @type {IActionMetadataArgs[]} * @memberof MetadataArgsStorage */ private actions; /** * Reject metadata arguments. * * @private * @type {IRejectMetadataArgs[]} * @memberof MetadataArgsStorage */ private rejects; /** * Parameter metadata arguments. * * @private * @type {IParamMetadataArgs[]} * @memberof MetadataArgsStorage */ private params; /** * User checker metadata arguments. * * @private * @type {IUserCheckerMetadataArgs} * @memberof MetadataArgsStorage */ private userChecker; /** * Handler metadata. * * @readonly * @type {IHandlerMetadataArgs[]} * @memberof MetadataArgsStorage */ get handlerMetadata(): IHandlerMetadataArgs[]; /** * Middleware metadata. * * @readonly * @type {IMiddlewareMetadataArgs[]} * @memberof MetadataArgsStorage */ get middlewareMetadata(): IMiddlewareMetadataArgs[]; /** * Adds handler metadata. * * @param {IHandlerMetadataArgs} metadata Metadata arguments * @memberof MetadataArgsStorage */ addHandlerMetadata(metadata: IHandlerMetadataArgs): void; /** * Adds middleware metadata. * * @param {IMiddlewareMetadataArgs} metadata Metadata arguments * @memberof MetadataArgsStorage */ addMiddlewareMetadata(metadata: IMiddlewareMetadataArgs): void; /** * Adds a middleware usage metadata. * * @param {IUseMetadataArgs} metadata Metadata arguments * @memberof MetadataArgsStorage */ addUseMetadata(metadata: IUseMetadataArgs): void; /** * Adds action metadata. * * @param {IActionMetadataArgs} metadata Metadata arguments * @memberof MetadataArgsStorage */ addActionMetadata(metadata: IActionMetadataArgs): void; /** * Adds reject metadata. * * @param {IRejectMetadataArgs} metadata Metadata arguements * @memberof MetadataArgsStorage */ addRejectMetadata(metadata: IRejectMetadataArgs): void; /** * Adds parameter metadata. * * @param {IParamMetadataArgs} metadata Metadata arguments * @memberof MetadataArgsStorage */ addParamMetadata(metadata: IParamMetadataArgs): void; /** * Adds user checker metadata. * * @param {IUserCheckerMetadataArgs} metadata Metadata arguments * @memberof MetadataArgsStorage */ addUserCheckerMetadata(metadata: IUserCheckerMetadataArgs): void; /** * Filters handler metadata for given classes. * * @param {Function[]} classes Handler classes * @returns {IHandlerMetadataArgs[]} Filtered handler metadata * @memberof MetadataArgsStorage */ filterHandlerMetadataForClasses(classes: Function[]): IHandlerMetadataArgs[]; /** * Filters middleware metadata for given classes. * * @param {Function} classes Middleware classes * @returns {IMiddlewareMetadataArgs[]} Filtered middleware metadata * @memberof MetadataArgsStorage */ filterMiddlewareMetadataForClasses(classes: Function[]): IMiddlewareMetadataArgs[]; /** * Filters registerd middleware usages for a given middleware. * * @param {Function} middleware Middleware to filter for * @returns {IUseMetadataArgs[]} Filterd usage metadata * @memberof MetadataArgsStorage */ filterUsesWithMiddleware(middleware: Function): IUseMetadataArgs[]; /** * Filters action metadata for given target. * * @param {Function} target Target of the action * @returns {IActionMetadataArgs[]} Filtered action metadata * @memberof MetadataArgsStorage */ filterActionsWithTarget(target: Function): IActionMetadataArgs[]; /** * Filters reject metadata for given target and method. * * @param {Function} target Target of the reject * @param {string} method Method of the reject * @returns {IRejectMetadataArgs} * @memberof MetadataArgsStorage */ filterRejectWithTargetAndMethod(target: Function, method: string): IRejectMetadataArgs | undefined; /** * Filters parameter metadata for a given target and method. * * @param {Function} target Target of the parameter * @param {string} method Method of the parameter * @returns {IParamMetadataArgs[]} * @memberof MetadataArgsStorage */ filterParamsWithTargetAndMethod(target: Function, method: string): IParamMetadataArgs[]; /** * Finds a user checker for a given target. * * @param {Function} target Target to find for * @returns {(IUserCheckerMetadataArgs | undefined)} Found user checker * @memberof MetadataArgsStorage */ findUserCheckerWithTarget(target: Function | undefined): IUserCheckerMetadataArgs | undefined; /** * Resets the storage. * * @memberof MetadataArgsStorage */ reset(): void; }