Files
Dwinzo-Backend-V0.0/src/shared/V1Models/Auth/tokenModel.ts

26 lines
747 B
TypeScript
Raw Normal View History

2025-05-17 11:15:53 +05:30
import { Schema, Document } from "mongoose";
import MainModel from "../../connect/mongoose.ts";
import { User } from "./userAuthModel.ts";
export interface Token extends Document {
userId: User["_id"];
2025-06-02 16:48:44 +05:30
isArchive: boolean;
2025-05-17 11:15:53 +05:30
refreshToken: string;
resetTokenExpiry?: Date;
resetToken: string;
2025-06-23 16:42:47 +05:30
role: string;
2025-05-17 11:15:53 +05:30
}
const tokenSchema: Schema = new Schema({
userId: { type: Schema.Types.ObjectId, ref: "User" },
isArchive: { type: Boolean, default: false },
2025-05-17 11:15:53 +05:30
token: { type: String },
refreshToken: { type: String },
tokenCreatedAt: { type: Date },
resetToken: { type: String },
resetTokenExpiry: { type: Date },
});
const tokenType = (db: any) => {
return MainModel(db, "Token", tokenSchema, "Token");
};
export default tokenType;