/**
* Get an array of all defined properties
*
* @return array
*/
public function toArray()
{
$result = ['browser' => $this->browser->toArray(), 'engine' => $this->engine->toArray(), 'os' => $this->os->toArray(), 'device' => $this->device->toArray()];
if (!count($result['browser'])) {
unset($result['browser']);
}
if (!count($result['engine'])) {
unset($result['engine']);
}
if (!count($result['os'])) {
unset($result['os']);
}
if (!count($result['device'])) {
unset($result['device']);
}
if ($this->camouflage) {
$result['camouflage'] = true;
}
return $result;
}