// Type definitions for express-jwt
// Project: https://www.npmjs.org/package/express-jwt
// Definitions by: Wonshik Kim
// Definitions: https://github.com/borisyankov/DefinitelyTyped
///
///
declare module "express-jwt" {
import express = require('express');
import unless = require('express-unless');
function jwt(options: jwt.Options): jwt.RequestHandler;
interface IDoneCallback {
(err: Error, result: T): void;
}
type ICallback = (req: express.Request, payload: T, done: IDoneCallback) => void;
module jwt {
export interface Options {
secret: string|ICallback;
userProperty?: string;
skip?: string[];
credentialsRequired?: boolean;
isRevoked?: boolean;
requestProperty?: string;
getToken?: ICallback;
[property: string]: any;
}
export interface RequestHandler extends express.RequestHandler {
unless?: typeof unless;
}
}
export = jwt;
}