1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
10 | import express = require('express');
|
11 | import unless = require('express-unless');
|
12 |
|
13 | export = jwt;
|
14 |
|
15 | declare function jwt(options: jwt.Options): jwt.RequestHandler;
|
16 | declare namespace jwt {
|
17 | type secretType = string | Buffer;
|
18 | type ErrorCode =
|
19 | | 'revoked_token'
|
20 | | 'invalid_token'
|
21 | | 'credentials_bad_scheme'
|
22 | | 'credentials_bad_format'
|
23 | | 'credentials_required';
|
24 |
|
25 | interface SecretCallbackLong {
|
26 | (req: express.Request, header: any, payload: any, done: (err: any, secret?: secretType) => void): void;
|
27 | }
|
28 | interface SecretCallback {
|
29 | (req: express.Request, payload: any, done: (err: any, secret?: secretType) => void): void;
|
30 | }
|
31 | interface IsRevokedCallback {
|
32 | (req: express.Request, payload: any, done: (err: any, revoked?: boolean) => void): void;
|
33 | }
|
34 | interface GetTokenCallback {
|
35 | (req: express.Request): any;
|
36 | }
|
37 | interface Options {
|
38 | |
39 |
|
40 |
|
41 |
|
42 | algorithms: string[];
|
43 | secret: secretType | SecretCallback | SecretCallbackLong;
|
44 | userProperty?: string | undefined;
|
45 | credentialsRequired?: boolean | undefined;
|
46 | isRevoked?: IsRevokedCallback | undefined;
|
47 | requestProperty?: string | undefined;
|
48 | getToken?: GetTokenCallback | undefined;
|
49 | [property: string]: any;
|
50 | }
|
51 | interface RequestHandler extends express.RequestHandler {
|
52 | unless: typeof unless;
|
53 | }
|
54 |
|
55 | class UnauthorizedError extends Error {
|
56 | status: number;
|
57 | message: string;
|
58 | name: 'UnauthorizedError';
|
59 | code: ErrorCode;
|
60 | inner: { message: string };
|
61 |
|
62 | constructor(code: ErrorCode, error: { message: string });
|
63 | }
|
64 | }
|
65 |
|
66 | declare global {
|
67 | namespace Express {
|
68 |
|
69 | interface User {}
|
70 |
|
71 | interface Request {
|
72 | user?: User | undefined;
|
73 | }
|
74 | }
|
75 | }
|