@dwp/govuk-casa
Version:
A framework for building GOVUK Collect-And-Submit-Applications
167 lines (166 loc) • 6.64 kB
TypeScript
/** @memberof module:@dwp/govuk-casa */
export default class MutableRouter {
/**
* A wrapping class to make Express routers mutable. You can append, prepend
* and remove routes from a MutableRouter before finally "sealing" it and
* mounting it on your Express app.
*
* @class
* @param {import("express").RouterOptions} [options] Router options
*/
constructor(options?: import("express").RouterOptions);
/**
* Seals this router to make it immutable. Returns the ExpressJS router.
*
* @returns {Router} ExpressJS Router
*/
seal(): Router;
/**
* Prepend middleware function(s) using the `all()` method.
*
* @param {string | Function} path Route path or middleware function
* @param {...Function} callbacks Additional middleware functions
* @returns {void}
*/
prependAll(path: string | Function, ...callbacks: Function[]): void;
/**
* Prepend middleware function(s) using the `get()` method.
*
* @param {string | Function} path Route path or middleware function
* @param {...Function} callbacks Additional middleware functions
* @returns {void}
*/
prependGet(path: string | Function, ...callbacks: Function[]): void;
/**
* Prepend middleware function(s) using the `post()` method.
*
* @param {string | Function} path Route path or middleware function
* @param {...Function} callbacks Additional middleware functions
* @returns {void}
*/
prependPost(path: string | Function, ...callbacks: Function[]): void;
/**
* Prepend middleware function(s) using the `delete()` method.
*
* @param {string | Function} path Route path or middleware function
* @param {...Function} callbacks Additional middleware functions
* @returns {void}
*/
prependDelete(path: string | Function, ...callbacks: Function[]): void;
/**
* Prepend middleware function(s) using the `put()` method.
*
* @param {string | Function} path Route path or middleware function
* @param {...Function} callbacks Additional middleware functions
* @returns {void}
*/
prependPut(path: string | Function, ...callbacks: Function[]): void;
/**
* Prepend middleware function(s) using the `use()` method.
*
* @param {string | Function} path Route path or middleware function
* @param {...Function} callbacks Additional middleware functions
* @returns {void}
*/
prependUse(path: string | Function, ...callbacks: Function[]): void;
/**
* Replace middleware function(s) that were mounted using the `all()` method.
*
* @param {string | Function} path Route path or middleware function
* @param {...Function} callbacks Additional middleware functions
* @returns {void}
*/
replaceAll(path: string | Function, ...callbacks: Function[]): void;
/**
* Replace middleware function(s) that were mounted using the `get()` method.
*
* @param {string | Function} path Route path or middleware function
* @param {...Function} callbacks Additional middleware functions
* @returns {void}
*/
replaceGet(path: string | Function, ...callbacks: Function[]): void;
/**
* Replace middleware function(s) that were mounted using the `post()` method.
*
* @param {string | Function} path Route path or middleware function
* @param {...Function} callbacks Additional middleware functions
* @returns {void}
*/
replacePost(path: string | Function, ...callbacks: Function[]): void;
/**
* Replace middleware function(s) that were mounted using the `delete()`
* method.
*
* @param {string | Function} path Route path or middleware function
* @param {...Function} callbacks Additional middleware functions
* @returns {void}
*/
replaceDelete(path: string | Function, ...callbacks: Function[]): void;
/**
* Replace middleware function(s) that were mounted using the `put()` method.
*
* @param {string | Function} path Route path or middleware function
* @param {...Function} callbacks Additional middleware functions
* @returns {void}
*/
replacePut(path: string | Function, ...callbacks: Function[]): void;
/**
* Replace middleware function(s) that were mounted using the `use()` method.
*
* @param {string | Function} path Route path or middleware function
* @param {...Function} callbacks Additional middleware functions
* @returns {void}
*/
replaceUse(path: string | Function, ...callbacks: Function[]): void;
/**
* Append middleware function(s) using the `all()` method.
*
* @param {string | Function} path Route path or middleware function
* @param {...Function} callbacks Additional middleware functions
* @returns {void}
*/
all(path: string | Function, ...callbacks: Function[]): void;
/**
* Append middleware function(s) using the `get()` method.
*
* @param {string | Function} path Route path or middleware function
* @param {...Function} callbacks Additional middleware functions
* @returns {void}
*/
get(path: string | Function, ...callbacks: Function[]): void;
/**
* Append middleware function(s) using the `post()` method.
*
* @param {string | Function} path Route path or middleware function
* @param {...Function} callbacks Additional middleware functions
* @returns {void}
*/
post(path: string | Function, ...callbacks: Function[]): void;
/**
* Append middleware function(s) using the `delete()` method.
*
* @param {string | Function} path Route path or middleware function
* @param {...Function} callbacks Additional middleware functions
* @returns {void}
*/
delete(path: string | Function, ...callbacks: Function[]): void;
/**
* Append middleware function(s) using the `put()` method.
*
* @param {string | Function} path Route path or middleware function
* @param {...Function} callbacks Additional middleware functions
* @returns {void}
*/
put(path: string | Function, ...callbacks: Function[]): void;
/**
* Append middleware function(s) using the `use()` method.
*
* @param {string | Function} path Route path or middleware function
* @param {...Function} callbacks Additional middleware functions
* @returns {void}
*/
use(path: string | Function, ...callbacks: Function[]): void;
route(): void;
#private;
}
import { Router } from "express";