import { Field } from '@nestjs/graphql'; import { ObjectType } from '@nestjs/graphql'; import { HideField } from '@nestjs/graphql'; import { Int } from '@nestjs/graphql'; import { Float } from '@nestjs/graphql'; import { Decimal } from '@prisma/client/runtime'; import { GraphQLDecimal } from 'prisma-graphql-type-decimal'; import { Role } from '../prisma/role.enum'; import { UserCountAggregate } from './user-count-aggregate.output'; import { UserAvgAggregate } from './user-avg-aggregate.output'; import { UserSumAggregate } from './user-sum-aggregate.output'; import { UserMinAggregate } from './user-min-aggregate.output'; import { UserMaxAggregate } from './user-max-aggregate.output'; @ObjectType() export class UserGroupBy { @Field(() => String, {nullable:false}) id!: string; @Field(() => String, {nullable:false}) email!: string; @Field(() => String, {nullable:false}) name!: string; @HideField() password!: string; @Field(() => String, {nullable:true}) bio?: string; @Field(() => String, {nullable:true}) image?: string; @Field(() => Int, {nullable:true}) countComments?: number; @Field(() => Float, {nullable:true}) rating?: number; @Field(() => GraphQLDecimal, {nullable:true}) money?: Decimal; @Field(() => Role, {nullable:true}) role?: keyof typeof Role; @Field(() => UserCountAggregate, {nullable:true}) _count?: UserCountAggregate; @Field(() => UserAvgAggregate, {nullable:true}) _avg?: UserAvgAggregate; @Field(() => UserSumAggregate, {nullable:true}) _sum?: UserSumAggregate; @Field(() => UserMinAggregate, {nullable:true}) _min?: UserMinAggregate; @Field(() => UserMaxAggregate, {nullable:true}) _max?: UserMaxAggregate; }