forked from soywiz-archive/typescript-node-definitions
-
Notifications
You must be signed in to change notification settings - Fork 0
/
express2.d.ts
124 lines (118 loc) · 5.41 KB
/
express2.d.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
/// <reference path="node.d.ts" />
declare module "express" {
export function createServer(): ExpressServer;
export function static(path: string): any;
import http = module("http");
export var listen;
// Connect middleware
export function bodyParser(options?:any): (req: ExpressServerRequest, res: ExpressServerResponse, next) =>void;
export function errorHandler(opts?:any): (req: ExpressServerRequest, res: ExpressServerResponse, next) =>void;
export function methodOverride(): (req: ExpressServerRequest, res: ExpressServerResponse, next) =>void;
export interface ExpressSettings {
env?: string;
views?: string;
}
export interface ExpressServer {
set(name: string): any;
set(name: string, val: any): any;
enable(name: string): ExpressServer;
disable(name: string): ExpressServer;
enabled(name: string): bool;
disabled(name: string): bool;
configure(env: string, callback: () => void): ExpressServer;
configure(env: string, env2: string, callback: () => void ): ExpressServer;
configure(callback: () => void): ExpressServer;
settings: ExpressSettings;
engine(ext: string, callback: any): void;
param(param: Function): ExpressServer;
param(name: string, callback: Function): ExpressServer;
param(name: string, expressParam: any): ExpressServer;
param(name: any[], callback: Function): ExpressServer;
get(name: string): any;
get(path: string, handler: (req: ExpressServerRequest, res: ExpressServerResponse) => void ): void;
get(path: RegExp, handler: (req: ExpressServerRequest, res: ExpressServerResponse) => void ): void;
get(path: string, callbacks: any, callback: () => void ): void;
post(path: string, handler: (req: ExpressServerRequest, res: ExpressServerResponse) => void ): void;
post(path: RegExp, handler: (req: ExpressServerRequest, res: ExpressServerResponse) => void ): void;
post(path: string, callbacks: any, callback: () => void ): void;
all(path: string, callback: Function): void;
all(path: string, callback: Function, callback2: Function): void;
locals: any;
render(view: string, callback: (err: Error, html) => void ): void;
render(view: string, opts: any, callback: (err: Error, html) => void ): void;
routes: any;
listen(port: number, hostname: string, backlog: number, callback: Function): void;
listen(port: number, callback: Function): void;
listen(path: string, callback?: Function): void;
listen(handle: any, listeningListener?: Function): void;
use(route: string, callback: Function): ExpressServer;
use(route: string, server: ExpressServer): ExpressServer;
use(callback: Function): ExpressServer;
use(server: ExpressServer): ExpressServer;
}
export interface ExpressServerRequest extends http.ServerRequest {
params: any;
query: any;
body: any;
files: any;
param(name: string): any;
route: any;
cookies: any;
signedCookies: any;
get(field: string): string;
accepts(types: string): any;
accepts(types: string[]): any;
accepted: any;
is(type: string): bool;
ip: string;
ips: string[];
path: string;
host: string;
fresh: bool;
stale: bool;
xhr: bool;
protocol: string;
secure: bool;
subdomains: string[];
acceptedLanguages: string[];
acceptedCharsets: string[];
acceptsCharset(charset: string): bool;
acceptsLanguage(lang: string): bool;
}
export interface ExpressServerResponse extends http.ServerResponse {
status(code: number): any;
set(field: any): void;
set(field: string, value: string): void;
header(field: any): void;
header(field: string, value: string): void;
get(field: string): any;
cookie(name: string, value: any, options?: any): void;
clearcookie(name: string, options?: any): void;
redirect(status: number, url: string): void;
redirect(url: string): void;
charset: string;
send(bodyOrStatus: any);
send(body: any, status: any);
send(body: any, headers: any, status: number);
json(bodyOrStatus: any);
json(body: any, status: any);
json(body: any, headers: any, status: number);
jsonp(bodyOrStatus: any);
jsonp(body: any, status: any);
jsonp(body: any, headers: any, status: number);
type(type: string): void;
format(object: any): void;
attachment(filename?: string);
sendfile(path: string): void;
sendfile(path: string, options: any): void;
sendfile(path: string, options: any, fn: (err: Error) =>void ): void;
download(path: string): void;
download(path: string, filename: string): void;
download(path: string, filename: string, fn: (err: Error) =>void ): void;
links(links: any): void;
locals: any;
render(view: string, locals: any): void;
render(view: string, callback: (err: Error, html: any) =>void ): void;
render(view: string, locals: any, callback: (err: Error, html: any) =>void ): void;
}
}