import { SocialLinkModel } from '@/src/module/auth/profile/inputs/models/social-link.model' import { StreamModel } from '@/src/module/stream/models/stream.model' import { Field, ID, ObjectType } from '@nestjs/graphql' import { User } from '@prisma/generated' @ObjectType() export class UserModel implements User { @Field(() => ID) id: string @Field(() => String) email: string @Field(() => String) password: string @Field(() => String) name: string @Field(() => String) displayName: string @Field(() => String, { nullable: true }) avatar: string @Field(() => String, { nullable: true }) bio: string @Field(() => Boolean) isEmailVerified: boolean @Field(() => Boolean) isVerified: boolean @Field(() => Boolean) isTotpEnabled: boolean @Field(() => Boolean) isDeactivated: boolean @Field(() => Date, { nullable: true }) deactivatedAt: Date @Field(() => String, { nullable: true }) totpSecret: string @Field(() => [SocialLinkModel]) socialLink: SocialLinkModel[] @Field(() => StreamModel) stream: StreamModel @Field(() => Date) createdAt: Date @Field(() => Date) updatedAt: Date }