@types/send
Advanced tools
| /// <reference types="node" /> | ||
| import * as fs from "fs"; | ||
| import * as m from "mime"; | ||
| import stream = require("stream"); | ||
| /** | ||
| * Create a new SendStream for the given path to send to a res. | ||
| * The req is the Node.js HTTP request and the path is a urlencoded path to send (urlencoded, not the actual file-system path). | ||
| */ | ||
| declare function send(req: stream.Readable, path: string, options?: send.SendOptions): send.SendStream; | ||
| declare namespace send { | ||
| const mime: typeof m; | ||
| interface SendOptions { | ||
| /** | ||
| * Enable or disable accepting ranged requests, defaults to true. | ||
| * Disabling this will not send Accept-Ranges and ignore the contents of the Range request header. | ||
| */ | ||
| acceptRanges?: boolean | undefined; | ||
| /** | ||
| * Enable or disable setting Cache-Control response header, defaults to true. | ||
| * Disabling this will ignore the maxAge option. | ||
| */ | ||
| cacheControl?: boolean | undefined; | ||
| /** | ||
| * Set how "dotfiles" are treated when encountered. | ||
| * A dotfile is a file or directory that begins with a dot ("."). | ||
| * Note this check is done on the path itself without checking if the path actually exists on the disk. | ||
| * If root is specified, only the dotfiles above the root are checked (i.e. the root itself can be within a dotfile when when set to "deny"). | ||
| * 'allow' No special treatment for dotfiles. | ||
| * 'deny' Send a 403 for any request for a dotfile. | ||
| * 'ignore' Pretend like the dotfile does not exist and 404. | ||
| * The default value is similar to 'ignore', with the exception that this default will not ignore the files within a directory that begins with a dot, for backward-compatibility. | ||
| */ | ||
| dotfiles?: "allow" | "deny" | "ignore" | undefined; | ||
| /** | ||
| * Byte offset at which the stream ends, defaults to the length of the file minus 1. | ||
| * The end is inclusive in the stream, meaning end: 3 will include the 4th byte in the stream. | ||
| */ | ||
| end?: number | undefined; | ||
| /** | ||
| * Enable or disable etag generation, defaults to true. | ||
| */ | ||
| etag?: boolean | undefined; | ||
| /** | ||
| * If a given file doesn't exist, try appending one of the given extensions, in the given order. | ||
| * By default, this is disabled (set to false). | ||
| * An example value that will serve extension-less HTML files: ['html', 'htm']. | ||
| * This is skipped if the requested file already has an extension. | ||
| */ | ||
| extensions?: string[] | string | boolean | undefined; | ||
| /** | ||
| * Enable or disable the immutable directive in the Cache-Control response header, defaults to false. | ||
| * If set to true, the maxAge option should also be specified to enable caching. | ||
| * The immutable directive will prevent supported clients from making conditional requests during the life of the maxAge option to check if the file has changed. | ||
| * @default false | ||
| */ | ||
| immutable?: boolean | undefined; | ||
| /** | ||
| * By default send supports "index.html" files, to disable this set false or to supply a new index pass a string or an array in preferred order. | ||
| */ | ||
| index?: string[] | string | boolean | undefined; | ||
| /** | ||
| * Enable or disable Last-Modified header, defaults to true. | ||
| * Uses the file system's last modified value. | ||
| */ | ||
| lastModified?: boolean | undefined; | ||
| /** | ||
| * Provide a max-age in milliseconds for http caching, defaults to 0. | ||
| * This can also be a string accepted by the ms module. | ||
| */ | ||
| maxAge?: string | number | undefined; | ||
| /** | ||
| * Serve files relative to path. | ||
| */ | ||
| root?: string | undefined; | ||
| /** | ||
| * Byte offset at which the stream starts, defaults to 0. | ||
| * The start is inclusive, meaning start: 2 will include the 3rd byte in the stream. | ||
| */ | ||
| start?: number | undefined; | ||
| } | ||
| interface SendStream extends stream.Stream { | ||
| /** | ||
| * @deprecated pass etag as option | ||
| * Enable or disable etag generation. | ||
| */ | ||
| etag(val: boolean): SendStream; | ||
| /** | ||
| * @deprecated use dotfiles option | ||
| * Enable or disable "hidden" (dot) files. | ||
| */ | ||
| hidden(val: boolean): SendStream; | ||
| /** | ||
| * @deprecated pass index as option | ||
| * Set index `paths`, set to a falsy value to disable index support. | ||
| */ | ||
| index(paths: string[] | string): SendStream; | ||
| /** | ||
| * @deprecated pass root as option | ||
| * Set root `path`. | ||
| */ | ||
| root(paths: string): SendStream; | ||
| /** | ||
| * @deprecated pass root as option | ||
| * Set root `path`. | ||
| */ | ||
| from(paths: string): SendStream; | ||
| /** | ||
| * @deprecated pass maxAge as option | ||
| * Set max-age to `maxAge`. | ||
| */ | ||
| maxage(maxAge: string | number): SendStream; | ||
| /** | ||
| * Emit error with `status`. | ||
| */ | ||
| error(status: number, error?: Error): void; | ||
| /** | ||
| * Check if the pathname ends with "/". | ||
| */ | ||
| hasTrailingSlash(): boolean; | ||
| /** | ||
| * Check if this is a conditional GET request. | ||
| */ | ||
| isConditionalGET(): boolean; | ||
| /** | ||
| * Strip content-* header fields. | ||
| */ | ||
| removeContentHeaderFields(): void; | ||
| /** | ||
| * Respond with 304 not modified. | ||
| */ | ||
| notModified(): void; | ||
| /** | ||
| * Raise error that headers already sent. | ||
| */ | ||
| headersAlreadySent(): void; | ||
| /** | ||
| * Check if the request is cacheable, aka responded with 2xx or 304 (see RFC 2616 section 14.2{5,6}). | ||
| */ | ||
| isCachable(): boolean; | ||
| /** | ||
| * Handle stat() error. | ||
| */ | ||
| onStatError(error: Error): void; | ||
| /** | ||
| * Check if the cache is fresh. | ||
| */ | ||
| isFresh(): boolean; | ||
| /** | ||
| * Check if the range is fresh. | ||
| */ | ||
| isRangeFresh(): boolean; | ||
| /** | ||
| * Redirect to path. | ||
| */ | ||
| redirect(path: string): void; | ||
| /** | ||
| * Pipe to `res`. | ||
| */ | ||
| pipe<T extends NodeJS.WritableStream>(res: T): T; | ||
| /** | ||
| * Transfer `path`. | ||
| */ | ||
| send(path: string, stat?: fs.Stats): void; | ||
| /** | ||
| * Transfer file for `path`. | ||
| */ | ||
| sendFile(path: string): void; | ||
| /** | ||
| * Transfer index for `path`. | ||
| */ | ||
| sendIndex(path: string): void; | ||
| /** | ||
| * Transfer index for `path`. | ||
| */ | ||
| stream(path: string, options?: {}): void; | ||
| /** | ||
| * Set content-type based on `path` if it hasn't been explicitly set. | ||
| */ | ||
| type(path: string): void; | ||
| /** | ||
| * Set response header fields, most fields may be pre-defined. | ||
| */ | ||
| setHeader(path: string, stat: fs.Stats): void; | ||
| } | ||
| } | ||
| export = send; |
| MIT License | ||
| Copyright (c) Microsoft Corporation. | ||
| Permission is hereby granted, free of charge, to any person obtaining a copy | ||
| of this software and associated documentation files (the "Software"), to deal | ||
| in the Software without restriction, including without limitation the rights | ||
| to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
| copies of the Software, and to permit persons to whom the Software is | ||
| furnished to do so, subject to the following conditions: | ||
| The above copyright notice and this permission notice shall be included in all | ||
| copies or substantial portions of the Software. | ||
| THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
| IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
| FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
| AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
| LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
| OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||
| SOFTWARE |
| { | ||
| "name": "@types/send", | ||
| "version": "0.17.6", | ||
| "description": "TypeScript definitions for send", | ||
| "homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/send", | ||
| "license": "MIT", | ||
| "contributors": [ | ||
| { | ||
| "name": "Mike Jerred", | ||
| "githubUsername": "MikeJerred", | ||
| "url": "https://github.com/MikeJerred" | ||
| }, | ||
| { | ||
| "name": "Piotr Błażejewicz", | ||
| "githubUsername": "peterblazejewicz", | ||
| "url": "https://github.com/peterblazejewicz" | ||
| }, | ||
| { | ||
| "name": "Sebastian Beltran", | ||
| "githubUsername": "bjohansebas", | ||
| "url": "https://github.com/bjohansebas" | ||
| } | ||
| ], | ||
| "main": "", | ||
| "types": "index.d.ts", | ||
| "repository": { | ||
| "type": "git", | ||
| "url": "https://github.com/DefinitelyTyped/DefinitelyTyped.git", | ||
| "directory": "types/send" | ||
| }, | ||
| "scripts": {}, | ||
| "dependencies": { | ||
| "@types/mime": "^1", | ||
| "@types/node": "*" | ||
| }, | ||
| "peerDependencies": {}, | ||
| "typesPublisherContentHash": "a1fa60652d5b2e0b448a0370c009054b3adfcc6c06edf12af3deb32ac1f92ac2", | ||
| "typeScriptVersion": "5.2" | ||
| } |
| # Installation | ||
| > `npm install --save @types/send` | ||
| # Summary | ||
| This package contains type definitions for send (https://github.com/pillarjs/send). | ||
| # Details | ||
| Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/send/v0. | ||
| ### Additional Details | ||
| * Last updated: Fri, 24 Oct 2025 04:02:41 GMT | ||
| * Dependencies: [@types/mime](https://npmjs.com/package/@types/mime), [@types/node](https://npmjs.com/package/@types/node) | ||
| # Credits | ||
| These definitions were written by [Mike Jerred](https://github.com/MikeJerred), [Piotr Błażejewicz](https://github.com/peterblazejewicz), and [Sebastian Beltran](https://github.com/bjohansebas). |
-225
| /// <reference types="node" /> | ||
| import * as fs from "fs"; | ||
| import * as m from "mime"; | ||
| import * as stream from "stream"; | ||
| /** | ||
| * Create a new SendStream for the given path to send to a res. | ||
| * The req is the Node.js HTTP request and the path is a urlencoded path to send (urlencoded, not the actual file-system path). | ||
| */ | ||
| declare function send(req: stream.Readable, path: string, options?: send.SendOptions): send.SendStream; | ||
| declare namespace send { | ||
| const mime: typeof m; | ||
| interface SendOptions { | ||
| /** | ||
| * Enable or disable accepting ranged requests, defaults to true. | ||
| * Disabling this will not send Accept-Ranges and ignore the contents of the Range request header. | ||
| */ | ||
| acceptRanges?: boolean | undefined; | ||
| /** | ||
| * Enable or disable setting Cache-Control response header, defaults to true. | ||
| * Disabling this will ignore the maxAge option. | ||
| */ | ||
| cacheControl?: boolean | undefined; | ||
| /** | ||
| * Set how "dotfiles" are treated when encountered. | ||
| * A dotfile is a file or directory that begins with a dot ("."). | ||
| * Note this check is done on the path itself without checking if the path actually exists on the disk. | ||
| * If root is specified, only the dotfiles above the root are checked (i.e. the root itself can be within a dotfile when when set to "deny"). | ||
| * 'allow' No special treatment for dotfiles. | ||
| * 'deny' Send a 403 for any request for a dotfile. | ||
| * 'ignore' Pretend like the dotfile does not exist and 404. | ||
| * The default value is similar to 'ignore', with the exception that this default will not ignore the files within a directory that begins with a dot, for backward-compatibility. | ||
| */ | ||
| dotfiles?: "allow" | "deny" | "ignore" | undefined; | ||
| /** | ||
| * Byte offset at which the stream ends, defaults to the length of the file minus 1. | ||
| * The end is inclusive in the stream, meaning end: 3 will include the 4th byte in the stream. | ||
| */ | ||
| end?: number | undefined; | ||
| /** | ||
| * Enable or disable etag generation, defaults to true. | ||
| */ | ||
| etag?: boolean | undefined; | ||
| /** | ||
| * If a given file doesn't exist, try appending one of the given extensions, in the given order. | ||
| * By default, this is disabled (set to false). | ||
| * An example value that will serve extension-less HTML files: ['html', 'htm']. | ||
| * This is skipped if the requested file already has an extension. | ||
| */ | ||
| extensions?: string[] | string | boolean | undefined; | ||
| /** | ||
| * Enable or disable the immutable directive in the Cache-Control response header, defaults to false. | ||
| * If set to true, the maxAge option should also be specified to enable caching. | ||
| * The immutable directive will prevent supported clients from making conditional requests during the life of the maxAge option to check if the file has changed. | ||
| * @default false | ||
| */ | ||
| immutable?: boolean | undefined; | ||
| /** | ||
| * By default send supports "index.html" files, to disable this set false or to supply a new index pass a string or an array in preferred order. | ||
| */ | ||
| index?: string[] | string | boolean | undefined; | ||
| /** | ||
| * Enable or disable Last-Modified header, defaults to true. | ||
| * Uses the file system's last modified value. | ||
| */ | ||
| lastModified?: boolean | undefined; | ||
| /** | ||
| * Provide a max-age in milliseconds for http caching, defaults to 0. | ||
| * This can also be a string accepted by the ms module. | ||
| */ | ||
| maxAge?: string | number | undefined; | ||
| /** | ||
| * Serve files relative to path. | ||
| */ | ||
| root?: string | undefined; | ||
| /** | ||
| * Byte offset at which the stream starts, defaults to 0. | ||
| * The start is inclusive, meaning start: 2 will include the 3rd byte in the stream. | ||
| */ | ||
| start?: number | undefined; | ||
| } | ||
| interface SendStream extends stream.Stream { | ||
| /** | ||
| * @deprecated pass etag as option | ||
| * Enable or disable etag generation. | ||
| */ | ||
| etag(val: boolean): SendStream; | ||
| /** | ||
| * @deprecated use dotfiles option | ||
| * Enable or disable "hidden" (dot) files. | ||
| */ | ||
| hidden(val: boolean): SendStream; | ||
| /** | ||
| * @deprecated pass index as option | ||
| * Set index `paths`, set to a falsy value to disable index support. | ||
| */ | ||
| index(paths: string[] | string): SendStream; | ||
| /** | ||
| * @deprecated pass root as option | ||
| * Set root `path`. | ||
| */ | ||
| root(paths: string): SendStream; | ||
| /** | ||
| * @deprecated pass root as option | ||
| * Set root `path`. | ||
| */ | ||
| from(paths: string): SendStream; | ||
| /** | ||
| * @deprecated pass maxAge as option | ||
| * Set max-age to `maxAge`. | ||
| */ | ||
| maxage(maxAge: string | number): SendStream; | ||
| /** | ||
| * Emit error with `status`. | ||
| */ | ||
| error(status: number, error?: Error): void; | ||
| /** | ||
| * Check if the pathname ends with "/". | ||
| */ | ||
| hasTrailingSlash(): boolean; | ||
| /** | ||
| * Check if this is a conditional GET request. | ||
| */ | ||
| isConditionalGET(): boolean; | ||
| /** | ||
| * Strip content-* header fields. | ||
| */ | ||
| removeContentHeaderFields(): void; | ||
| /** | ||
| * Respond with 304 not modified. | ||
| */ | ||
| notModified(): void; | ||
| /** | ||
| * Raise error that headers already sent. | ||
| */ | ||
| headersAlreadySent(): void; | ||
| /** | ||
| * Check if the request is cacheable, aka responded with 2xx or 304 (see RFC 2616 section 14.2{5,6}). | ||
| */ | ||
| isCachable(): boolean; | ||
| /** | ||
| * Handle stat() error. | ||
| */ | ||
| onStatError(error: Error): void; | ||
| /** | ||
| * Check if the cache is fresh. | ||
| */ | ||
| isFresh(): boolean; | ||
| /** | ||
| * Check if the range is fresh. | ||
| */ | ||
| isRangeFresh(): boolean; | ||
| /** | ||
| * Redirect to path. | ||
| */ | ||
| redirect(path: string): void; | ||
| /** | ||
| * Pipe to `res`. | ||
| */ | ||
| pipe<T extends NodeJS.WritableStream>(res: T): T; | ||
| /** | ||
| * Transfer `path`. | ||
| */ | ||
| send(path: string, stat?: fs.Stats): void; | ||
| /** | ||
| * Transfer file for `path`. | ||
| */ | ||
| sendFile(path: string): void; | ||
| /** | ||
| * Transfer index for `path`. | ||
| */ | ||
| sendIndex(path: string): void; | ||
| /** | ||
| * Transfer index for `path`. | ||
| */ | ||
| stream(path: string, options?: {}): void; | ||
| /** | ||
| * Set content-type based on `path` if it hasn't been explicitly set. | ||
| */ | ||
| type(path: string): void; | ||
| /** | ||
| * Set response header fields, most fields may be pre-defined. | ||
| */ | ||
| setHeader(path: string, stat: fs.Stats): void; | ||
| } | ||
| } | ||
| export = send; |
-21
| MIT License | ||
| Copyright (c) Microsoft Corporation. | ||
| Permission is hereby granted, free of charge, to any person obtaining a copy | ||
| of this software and associated documentation files (the "Software"), to deal | ||
| in the Software without restriction, including without limitation the rights | ||
| to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
| copies of the Software, and to permit persons to whom the Software is | ||
| furnished to do so, subject to the following conditions: | ||
| The above copyright notice and this permission notice shall be included in all | ||
| copies or substantial portions of the Software. | ||
| THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
| IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
| FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
| AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
| LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
| OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||
| SOFTWARE |
| { | ||
| "name": "@types/send", | ||
| "version": "0.17.5", | ||
| "description": "TypeScript definitions for send", | ||
| "homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/send", | ||
| "license": "MIT", | ||
| "contributors": [ | ||
| { | ||
| "name": "Mike Jerred", | ||
| "githubUsername": "MikeJerred", | ||
| "url": "https://github.com/MikeJerred" | ||
| }, | ||
| { | ||
| "name": "Piotr Błażejewicz", | ||
| "githubUsername": "peterblazejewicz", | ||
| "url": "https://github.com/peterblazejewicz" | ||
| }, | ||
| { | ||
| "name": "Sebastian Beltran", | ||
| "githubUsername": "bjohansebas", | ||
| "url": "https://github.com/bjohansebas" | ||
| } | ||
| ], | ||
| "main": "", | ||
| "types": "index.d.ts", | ||
| "repository": { | ||
| "type": "git", | ||
| "url": "https://github.com/DefinitelyTyped/DefinitelyTyped.git", | ||
| "directory": "types/send" | ||
| }, | ||
| "scripts": {}, | ||
| "dependencies": { | ||
| "@types/mime": "^1", | ||
| "@types/node": "*" | ||
| }, | ||
| "peerDependencies": {}, | ||
| "typesPublisherContentHash": "8088c014f9e7c4c38cfce1ccf4f348a612ebe7009a733d262a12236edd4e90d7", | ||
| "typeScriptVersion": "5.1" | ||
| } |
| # Installation | ||
| > `npm install --save @types/send` | ||
| # Summary | ||
| This package contains type definitions for send (https://github.com/pillarjs/send). | ||
| # Details | ||
| Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/send. | ||
| ### Additional Details | ||
| * Last updated: Sat, 07 Jun 2025 02:15:25 GMT | ||
| * Dependencies: [@types/mime](https://npmjs.com/package/@types/mime), [@types/node](https://npmjs.com/package/@types/node) | ||
| # Credits | ||
| These definitions were written by [Mike Jerred](https://github.com/MikeJerred), [Piotr Błażejewicz](https://github.com/peterblazejewicz), and [Sebastian Beltran](https://github.com/bjohansebas). |
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
No bug tracker
MaintenancePackage does not have a linked bug tracker in package.json.
Found 1 instance in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
No bug tracker
MaintenancePackage does not have a linked bug tracker in package.json.
Found 1 instance in 1 package
10093
0.04%1
Infinity%