46 lines
895 B
Markdown
46 lines
895 B
Markdown
# Express Utils for Node Projects
|
|
|
|
## Installation
|
|
|
|
##### 1. Install the package
|
|
|
|
```
|
|
npm install git+https://git.biotronik.int/scm/coe-bs-website/node-pkg-express-utils.git
|
|
```
|
|
|
|
##### 2. Copy the types
|
|
|
|
Copy the content below to any location within the source folder of your project and name it `extend-request.d.ts`.
|
|
It just needs to sit there with no more action required.
|
|
|
|
```ts
|
|
// extend-request.d.ts
|
|
|
|
declare global {
|
|
namespace Express {
|
|
interface UserInfo {
|
|
email: string,
|
|
email_verified: boolean,
|
|
family_name: string,
|
|
given_name: string,
|
|
groups: string[],
|
|
name: string,
|
|
preferred_username: string,
|
|
sub: string,
|
|
}
|
|
|
|
interface Request {
|
|
getUserInfo(): Promise<Partial<UserInfo>|undefined>;
|
|
noLogging: boolean|undefined;
|
|
permissionDetails?: import('role-acl').Permission;
|
|
}
|
|
|
|
interface Response {
|
|
initLogout(): boolean;
|
|
}
|
|
}
|
|
}
|
|
|
|
export {};
|
|
```
|