Files
core_ng/server/schema/gateway/LoginToken.ts
T
2023-08-18 15:47:10 +00:00

23 lines
705 B
TypeScript

import { type UserIDType } from "./User.js";
import { Schema, model } from "mongoose";
export interface ILoginToken {
userID: UserIDType;
token: string;
ip: string;
regDate: Date;
validUntil: Date;
}
export const LoginToken = new Schema<ILoginToken>({
userID: { type: Number, required: true },
token: { type: String, required: true },
ip: { type: String, required: true },
regDate: { type: Date, required: true },
validUntil: { type: Date, required: true },
}, { autoIndex: false, autoCreate: false, })
.index({ userID: 1, token: 1 })
.index({ validUntil: 1 }, { expireAfterSeconds: 1 })
;
export default model<ILoginToken>('LoginToken', LoginToken);