Skip to main content

Class: Middleware<Options>

@sapphire/plugin-api.Middleware

Since

1.0.0

Type parameters

NameType
Optionsextends Options = Options

Hierarchy

  • Piece<Options, "middlewares">

    Middleware

Constructors

constructor

new Middleware<Options>(context, options?): Middleware<Options>

Type parameters

NameType
Optionsextends MiddlewareOptions = MiddlewareOptions

Parameters

NameType
contextLoaderContext
optionsOptions

Returns

Middleware<Options>

Overrides

Piece&lt;Options, 'middlewares'&gt;.constructor

Defined in

projects/plugins/packages/api/src/lib/structures/Middleware.ts:23

Properties

enabled

enabled: boolean

Whether or not the piece is enabled.

Inherited from

Piece.enabled

Defined in

node_modules/@sapphire/pieces/dist/esm/index.d.mts:234


location

Readonly location: PieceLocation

The location metadata for the piece's file.

Inherited from

Piece.location

Defined in

node_modules/@sapphire/pieces/dist/esm/index.d.mts:226


name

Readonly name: string

The name of the piece.

Inherited from

Piece.name

Defined in

node_modules/@sapphire/pieces/dist/esm/index.d.mts:230


options

Readonly options: Options

The raw options passed to this Piece

Inherited from

Piece.options

Defined in

node_modules/@sapphire/pieces/dist/esm/index.d.mts:238


position

Readonly position: number

The position the middleware has. The MiddlewareStore will run all middlewares with lower position than this one.

The built-in middlewares follow the following positions:

  • headers: 10
  • body: 20
  • cookies: 30
  • auth: 40

Defined in

projects/plugins/packages/api/src/lib/structures/Middleware.ts:21


store

Readonly store: MiddlewareStore

The store that contains the piece.

Inherited from

Piece.store

Defined in

node_modules/@sapphire/pieces/dist/esm/index.d.mts:222

Accessors

container

get container(): Container

A reference to the Container object for ease of use.

Returns

Container

See

container

Inherited from

Piece.container

Defined in

node_modules/@sapphire/pieces/dist/esm/index.d.mts:244

Methods

onLoad

onLoad(): unknown

Per-piece listener that is called when the piece is loaded into the store. Useful to set-up asynchronous initialization tasks.

Returns

unknown

Inherited from

Piece.onLoad

Defined in

node_modules/@sapphire/pieces/dist/esm/index.d.mts:249


onUnload

onUnload(): unknown

Per-piece listener that is called when the piece is unloaded from the store. Useful to set-up clean-up tasks.

Returns

unknown

Inherited from

Piece.onUnload

Defined in

node_modules/@sapphire/pieces/dist/esm/index.d.mts:254


reload

reload(): Promise<void>

Reloads the piece by loading the same path in the store.

Returns

Promise<void>

Inherited from

Piece.reload

Defined in

node_modules/@sapphire/pieces/dist/esm/index.d.mts:262


run

run(request, response, route): unknown

The method to be overridden by other middlewares.

Parameters

NameTypeDescription
requestApiRequestThe client's request.
responseApiResponse<IncomingMessage>The server's response.
routenull | Route<RouteOptions>The route that matched this request, will be null if none matched.

Returns

unknown

Defined in

projects/plugins/packages/api/src/lib/structures/Middleware.ts:34


toJSON

toJSON(): PieceJSON

Defines the JSON.stringify behavior of this piece.

Returns

PieceJSON

Inherited from

Piece.toJSON

Defined in

node_modules/@sapphire/pieces/dist/esm/index.d.mts:266


unload

unload(): Promise<void>

Unloads and disables the piece.

Returns

Promise<void>

Inherited from

Piece.unload

Defined in

node_modules/@sapphire/pieces/dist/esm/index.d.mts:258