DefinitelyTyped/types/request-ip/index.d.ts
2017-10-30 15:57:02 -07:00

44 lines
1.0 KiB
TypeScript

// Type definitions for request-ip
// Project: https://github.com/pbojinov/request-ip
// Definitions by: Adam Babcock <https://github.com/mrhen>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.3
/// <reference types="node" />
import * as http from 'http';
interface RequestHeaders extends http.IncomingHttpHeaders {
'x-client-ip'?: string;
'x-forwarded-for'?: string;
'x-real-ip'?: string;
'x-cluster-client-ip'?: string;
'x-forwarded'?: string;
'forwarded-for'?: string;
'forwarded'?: string;
}
interface Request {
headers: RequestHeaders;
connection: {
remoteAddress?: string;
socket?: {
remoteAddress?: string
};
};
info?: {
remoteAddress?: string
};
socket?: {
remoteAddress?: string
};
}
interface Options {
attributeName: string;
}
export declare function getClientIp(req: Request): string;
export function mw(options?: Options): (req: Request, res: any, next: any) => any;