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

/**
 * OnboardTenantDto — creates a new tenant + seeds Admin role + Admin user.
 *
 * Per CLAUDE.md:
 * - No Super Admin in Phase 1 — Admin is highest role, seeded during tenant onboarding
 */
export class OnboardTenantDto {
  @IsString()
  @IsNotEmpty()
  tenant_name: string;

  @IsString()
  @IsNotEmpty()
  subdomain: string;

  @IsString()
  @IsNotEmpty()
  admin_name: string;

  @IsEmail()
  @IsNotEmpty()
  admin_email: string;

  @IsString()
  @IsNotEmpty()
  @MinLength(8)
  admin_password: string;
}
