23 lines
501 B
TypeScript
23 lines
501 B
TypeScript
|
import jwt, { Algorithm } from "jsonwebtoken";
|
||
|
import { SysCallMapping } from "../system";
|
||
|
|
||
|
export function jwtSyscalls(): SysCallMapping {
|
||
|
return {
|
||
|
"jwt.jwt": (
|
||
|
ctx,
|
||
|
hexSecret: string,
|
||
|
id: string,
|
||
|
algorithm: Algorithm,
|
||
|
expiry: string,
|
||
|
audience: string
|
||
|
): string => {
|
||
|
return jwt.sign({}, Buffer.from(hexSecret, "hex"), {
|
||
|
keyid: id,
|
||
|
algorithm: algorithm,
|
||
|
expiresIn: expiry,
|
||
|
audience: audience,
|
||
|
});
|
||
|
},
|
||
|
};
|
||
|
}
|