import {
    IsEmail,
    IsNotEmpty,
    IsOptional,
    IsString,
    Matches,
    MaxLength,
    MinLength,
  } from 'class-validator';

  export class CreateTenantDto {
    @IsString()
    @MinLength(3)
    @MaxLength(100)
    @Matches(/^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/, {
      message: 'subdomain must be lowercase alphanumeric (hyphens allowed)',
    })
    subdomain!: string;

    @IsString()
    @IsNotEmpty()
    @MaxLength(200)
    name!: string;

    @IsString()
    @IsOptional()
    @MaxLength(200)
    legalName?: string;

    @IsEmail()
    adminEmail!: string;

    @IsString()
    @MinLength(8)
    adminPassword!: string;

    @IsString()
    @IsNotEmpty()
    @MaxLength(200)
    adminFullName!: string;

    @IsString()
    @IsOptional()
    @MaxLength(50)
    contactPhone?: string;
  }
  