0.4.3 • Published 6 months ago

@types/itty-router-extras v0.4.3

Weekly downloads
-
License
MIT
Repository
github
Last release
6 months ago

Installation

npm install --save @types/itty-router-extras

Summary

This package contains type definitions for itty-router-extras (https://github.com/kwhitley/itty-router-extras).

Details

Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/itty-router-extras.

index.d.ts

// Type definitions for itty-router-extras 0.4
// Project: https://github.com/kwhitley/itty-router-extras
// Definitions by: David Roizenman <https://github.com/hmnd>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped

import { Router, Request as IttyRequest } from 'itty-router';
export { Router as ThrowableRouter };

/**
 * Throw to respond with provided status code and message.
 */
export class StatusError extends Error {
    constructor(status: number, message: string);
}

/**
 * Middleware to safely parse and embed content request bodies (eg.text/json) as `request.content`.
 */
export function withContent(request: IttyRequest): void;

/**
 * Middleware to embed cookies into request as `request.cookies` (object).
 */
export function withCookies(request: IttyRequest): void;

/**
 * Middleware to embed route params directly into request as a convenience.
 *
 * NOTE: withParams cannot be applied globally upstream, as it will have seen no route params at this stage (to spread into the request).
 */
export function withParams(request: IttyRequest): void;

export interface ErrorBody {
    error: string;
    status: number;
}

/**
 * Create JSON-formatted {@link Response}, with {@link ErrorBody} or custom payload as body.
 *
 * @param status Response status code
 * @param payload Error message or custom payload
 */
export function error(status: number, payload?: string | object): Response;

/**
 * Create JSON-formatted {@link Response Response}.
 *
 * @param content Payload
 * @param options Response options
 */
export function json(content: object, options?: ResponseInit): Response;

/**
 * Create JSON-formatted {@link Response}, with status code 404, and message as {@link ErrorBody} or custom payload.
 *
 * @param payload Error message or custom payload
 */
export function missing(payload?: string | object): Response;

export interface StatusBody {
    message: string;
    status: number;
}

/**
 * Create JSON-formatted {@link Response}, with provided status code and message as {@link StatusBody body} or custom payload.
 *
 * @param status Response status code
 * @param message Message or custom payload
 */
export function status(status: number, payload?: string | object): Response;

/**
 * Create plaintext-formatted {@link Response} with provided options.
 *
 * @param content Response text
 * @param options Response options
 */
export function text(content: string, options?: ResponseInit): Response;

Additional Details

  • Last updated: Tue, 10 Aug 2021 05:31:26 GMT
  • Dependencies: @types/itty-router
  • Global values: none

Credits

These definitions were written by David Roizenman.

0.4.1

8 months ago

0.4.3

6 months ago

0.4.2

7 months ago

0.4.0

3 years ago