2
2
mirror of https://github.com/Thream/website.git synced 2024-07-21 09:28:32 +02:00
website/tools/authentication/index.ts

34 lines
738 B
TypeScript
Raw Normal View History

import type { UserCurrent } from "../../models/User"
export interface RefreshTokenResponse {
accessToken: string
/** how long, in milliseconds, until the accessToken expires */
expiresIn: number
type: "Bearer"
}
export interface Tokens extends RefreshTokenResponse {
refreshToken: string
}
export interface PagePropsWithAuthentication {
authentication: {
tokens: Tokens
user: UserCurrent
}
}
2022-03-16 12:18:09 +01:00
export const isTokens = (data: { [key: string]: any }): data is Tokens => {
return (
"accessToken" in data &&
"refreshToken" in data &&
"type" in data &&
"expiresIn" in data
2022-03-16 12:18:09 +01:00
)
}
export * from "./Authentication"
export * from "./authenticationFromServerSide"
export * from "./AuthenticationContext"