import { IsInt, IsNotEmpty, IsObject, IsOptional, IsPositive, IsString } from "class-validator";

/**
 * Defines the runner group class - a simplified version of the backend's ResponseRunnerTeam/-Organization
*/
export class RunnerGroup {
    /**
     * The group's id.
     */
    @IsInt()
    @IsPositive()
    id: number;

    /**
     * The group's name.
     */
    @IsString()
    @IsNotEmpty()
    name: string;

    /**
     * The group's parent group.
     * If it is set this implies that the object is a team.
     */
    @IsObject()
    @IsOptional()
    parentGroup?: RunnerGroup;
}
