import { ApiProperty } from '@nestjs/swagger';
import { Exclude } from 'class-transformer';
import { IsString } from 'class-validator';
import { BaseStatusDto } from 'src/core/modules/infrastructure/dto/base-status.dto';
import { UserRole } from 'src/modules/user-related/user/constants';
import { UserEntity } from 'src/modules/user-related/user/domain/entities/user.entity';

export class UpdatePasswordTenantDto
  extends BaseStatusDto
  implements UserEntity
{
  @ApiProperty({ name: 'password', required: true, example: 'Tenant123!' })
  @IsString()
  password: string;

  @Exclude()
  name: string;

  @Exclude()
  username: string;

  @Exclude()
  share_margin: number;

  @Exclude()
  email: string;

  @Exclude()
  role: UserRole;
}
