name, 'name'); self::requireFilled($this->email, 'email'); self::requireFilled($this->document, 'document'); self::requireIn($this->type, ['individual', 'company'], 'type'); self::requireIn($this->documentType, ['CPF', 'CNPJ'], 'document_type'); self::requireFilled($this->code, 'code'); } public function toArray(): array { return $this->filterFilledRecursive([ 'name' => $this->name, 'email' => $this->email, 'document' => $this->document, 'type' => $this->type, 'document_type' => $this->documentType, 'code' => $this->code, 'address' => $this->address, 'phones' => $this->phones, ]); } }