Initial project
This commit is contained in:
89
src/types/User.ts
Normal file
89
src/types/User.ts
Normal file
@ -0,0 +1,89 @@
|
||||
import { ImageType, Model } from "./Model";
|
||||
import { AttachmentView } from "./Attachment";
|
||||
|
||||
export type User = {
|
||||
name: string;
|
||||
email?: string;
|
||||
emailVerifyAt: number;
|
||||
unmuteAt?: number;
|
||||
unbanAt?: number;
|
||||
} & Model;
|
||||
|
||||
export type UserView = {
|
||||
profile: UserProfileView
|
||||
} & User;
|
||||
|
||||
export enum UserAttachType {
|
||||
|
||||
AVATAR,
|
||||
|
||||
WRAPPER,
|
||||
|
||||
DEFAULT_AVATAR,
|
||||
|
||||
DEFAULT_WRAPPER,
|
||||
}
|
||||
|
||||
export type UserProfile = {
|
||||
userId: number;
|
||||
avatarType: ImageType;
|
||||
wrapperType: ImageType;
|
||||
|
||||
exp: number;
|
||||
sex?: number;
|
||||
birthdate?: number;
|
||||
qq?: string;
|
||||
description: string;
|
||||
lastLoginIP?: string;
|
||||
lastLoginAt?: number;
|
||||
updatedAt?: number;
|
||||
}
|
||||
|
||||
export type UserProfileView = {
|
||||
attachmentList?: AttachmentView[]
|
||||
} & UserProfile
|
||||
|
||||
export type UserToken = {
|
||||
value: string;
|
||||
expireAt: number;
|
||||
}
|
||||
|
||||
export type RegisterRequest = {
|
||||
name: string;
|
||||
password: string;
|
||||
email?: string;
|
||||
}
|
||||
|
||||
export type LoginRequest = {
|
||||
user: string;
|
||||
password: string;
|
||||
}
|
||||
|
||||
// 登录返回
|
||||
export type LoginResponse = {
|
||||
id: number;
|
||||
token: string;
|
||||
expireAt: number;
|
||||
}
|
||||
|
||||
export type LoginUser = {
|
||||
token?: LoginToken;
|
||||
user?: UserView
|
||||
}
|
||||
|
||||
export type LoginToken = {
|
||||
id?: number;
|
||||
} & UserToken;
|
||||
|
||||
export enum LoginType {
|
||||
ALERT,
|
||||
IFRAME,
|
||||
REDIRECT
|
||||
}
|
||||
|
||||
export type UserLevelType = {
|
||||
exp: number; // 经验数值,和 UserData.exp 一样
|
||||
value: number; // 经验对应等级,[0, 8]
|
||||
percent: number; // 该经验在该等级的百分比 [0, 1]
|
||||
nextLevelUp: number; // 下一级经验值
|
||||
}
|
||||
Reference in New Issue
Block a user