$denominator * @param list> $resourceResults * @param list $blockers */ public function __construct( private readonly string $scopeKey, private readonly array $denominator, private readonly string $state, private readonly array $resourceResults = [], private readonly array $blockers = [], private readonly ?ClaimState $claimState = null, ) {} public function scopeKey(): string { return $this->scopeKey; } /** * @return list */ public function denominator(): array { return $this->denominator; } public function state(): string { return $this->state; } public function certified(): bool { return $this->state === self::PASSED; } public function claimState(): ?ClaimState { return $this->claimState; } /** * @return list */ public function blockers(): array { return $this->blockers; } /** * @return list> */ public function resourceResults(): array { return $this->resourceResults; } /** * @return array */ public function toArray(): array { return [ 'scope_key' => $this->scopeKey, 'denominator' => $this->denominator, 'state' => $this->state, 'certified' => $this->certified(), 'claim_state' => $this->claimState?->value, 'blockers' => $this->blockers, 'resource_results' => $this->resourceResults, ]; } }