documentCount > 0; } public function hasQueries(): bool { return $this->queryCount > 0; } public function getAverageDocumentSize(): float { if ($this->documentCount === 0) { return 0.0; } return $this->indexSize->toBytes() / $this->documentCount; } public function toArray(): array { return [ 'entity_type' => $this->entityType, 'document_count' => $this->documentCount, 'index_size_bytes' => $this->indexSize->toBytes(), 'index_size_mb' => $this->indexSize->toMegaBytes(), 'index_size_gb' => $this->indexSize->toGigaBytes(), 'query_count' => $this->queryCount, 'average_query_time_ms' => $this->averageQueryTimeMs, 'average_document_size_bytes' => $this->getAverageDocumentSize(), 'last_indexed' => $this->lastIndexed->toISOString(), 'created_at' => $this->createdAt->toISOString(), 'metadata' => $this->metadata, ]; } }