25 lines
626 B
TypeScript
25 lines
626 B
TypeScript
/**
|
||
* UI 侧用户模型(基于 data/dto/user/user + user_storage 重新导出 view-model)
|
||
*
|
||
* 原始 Dart: lib/data/models/user/user.dart
|
||
*/
|
||
import { z } from "zod";
|
||
|
||
export const UserViewSchema = z.object({
|
||
id: z.string(),
|
||
username: z.string(),
|
||
email: z.string(),
|
||
avatarUrl: z.string(),
|
||
intimacy: z.number(),
|
||
dolBalance: z.number(),
|
||
creditBalance: z.number(),
|
||
vipExpiresAt: z.string().nullable(),
|
||
relationshipStage: z.string(),
|
||
currentMood: z.string(),
|
||
isGuest: z.boolean(),
|
||
isVip: z.boolean(),
|
||
voiceMinutesRemaining: z.number(),
|
||
});
|
||
|
||
export type UserView = z.infer<typeof UserViewSchema>;
|