관리-도구
편집 파일: DeleteUsersResult.php
<?php declare(strict_types=1); namespace Kreait\Firebase\Auth; use Beste\Json; use Psr\Http\Message\ResponseInterface; use function count; use function is_countable; final class DeleteUsersResult { /** * @param list<array{ * index: int, * localId: string, * message: string * }> $rawErrors */ private function __construct( private readonly int $successCount, private readonly int $failureCount, private readonly array $rawErrors, ) { } /** * @internal */ public static function fromRequestAndResponse(DeleteUsersRequest $request, ResponseInterface $response): self { $data = Json::decode((string) $response->getBody(), true); $errors = $data['errors'] ?? []; $failureCount = is_countable($errors) ? count($errors) : 0; $successCount = count($request->uids()) - $failureCount; return new self($successCount, $failureCount, $errors); } public function failureCount(): int { return $this->failureCount; } public function successCount(): int { return $this->successCount; } /** * @return list<array{ * index: int, * localId: string, * message: string * }> */ public function rawErrors(): array { return $this->rawErrors; } }