MCPcopy
hub / github.com/subnub/myDrive / UserInterface

Interface UserInterface

backend/models/user-model.ts:93–120  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

91);
92
93export interface UserInterface extends Document {
94 _id: mongoose.Types.ObjectId;
95 email: string;
96 password: string;
97 tokens: any[];
98 tempTokens: any[];
99 privateKey?: string;
100 publicKey?: string;
101 token?: string;
102 emailVerified?: boolean;
103 emailToken?: string;
104 passwordResetToken?: string;
105 passwordLastModified?: number;
106
107 getEncryptionKey: () => Buffer | undefined;
108 generateTempAuthToken: () => Promise<any>;
109 encryptToken: (tempToken: any, key: any, publicKey: any) => any;
110 decryptToken: (encryptedToken: any, key: any, publicKey: any) => any;
111 findByCreds: (email: string, password: string) => Promise<UserInterface>;
112 generateAuthToken: (
113 uuid: string | undefined
114 ) => Promise<{ accessToken: string; refreshToken: string }>;
115 generateAuthTokenStreamVideo: (uuid: string | undefined) => Promise<string>;
116 generateEncryptionKeys: () => Promise<void>;
117 changeEncryptionKey: (randomKey: Buffer) => Promise<void>;
118 generateEmailVerifyToken: () => Promise<string>;
119 generatePasswordResetToken: () => Promise<string>;
120}
121
122const maxAgeAccess = 60 * 1000 * 20 + 1000 * 60;
123const maxAgeRefresh = 60 * 1000 * 60 * 24 * 30 + 1000 * 60;

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected