
import { ApiPropertyOptional } from '@nestjs/swagger';
import {  IsInt, IsOptional, IsString, Length } from 'class-validator';
import { PermissionStateDto } from './permission-state.dto';

export class UpdateRoleDto {
  @ApiPropertyOptional({ example: 'Updated Manager', description: 'Updated role name' })
  @IsOptional()
  @IsString()
  @Length(1, 150)
  name?: string;

  // priority
  @ApiPropertyOptional({ example: 1, description: 'Updated priority of the role (lower number = higher priority)' })
  @IsOptional()
  @IsInt()
  priority?: number;

  @ApiPropertyOptional()
  permissions?: PermissionStateDto[];

  @ApiPropertyOptional()
  subPermissions?: PermissionStateDto[];
}
