<?php declare(strict_types=1); namespace Kreait\Firebase\RemoteConfig; use GuzzleHttp\Psr7\Uri; use Psr\Http\Message\UriInterface; /** * @phpstan-type RemoteConfigUserShape array{ * name?: non-empty-string, * email?: non-empty-string, * imageUrl?: non-empty-string * } */ final class User { /** * @var non-empty-string|null */ private ?string $name; /** * @var non-empty-string|null */ private ?string $email; private ?UriInterface $imageUri; /** * @param non-empty-string|null $name * @param non-empty-string|null $email */ private function __construct(?string $name, ?string $email, ?UriInterface $imageUri) { $this->name = $name; $this->email = $email; $this->imageUri = $imageUri; } /** * @internal * * @param RemoteConfigUserShape $data */ public static function fromArray(array $data): self { $imageUrl = $data['imageUrl'] ?? null; $imageUri = $imageUrl ? new Uri($imageUrl) : null; return new self( $data['name'] ?? null, $data['email'] ?? null, $imageUri, ); } /** * @return non-empty-string|null */ public function name(): ?string { return $this->name; } /** * @return non-empty-string|null */ public function email(): ?string { return $this->email; } public function imageUri(): ?UriInterface { return $this->imageUri; } }
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
ApiClient.php | File | 3.79 KB | 0644 |
|
Condition.php | File | 2.49 KB | 0644 |
|
ConditionalValue.php | File | 2.3 KB | 0644 |
|
DefaultValue.php | File | 1.53 KB | 0644 |
|
ExplicitValue.php | File | 825 B | 0644 |
|
FindVersions.php | File | 4.13 KB | 0644 |
|
Parameter.php | File | 4.11 KB | 0644 |
|
ParameterGroup.php | File | 2.05 KB | 0644 |
|
PersonalizationValue.php | File | 780 B | 0644 |
|
TagColor.php | File | 1.64 KB | 0644 |
|
Template.php | File | 7.49 KB | 0644 |
|
UpdateOrigin.php | File | 852 B | 0644 |
|
UpdateType.php | File | 920 B | 0644 |
|
User.php | File | 1.51 KB | 0644 |
|
Version.php | File | 2.9 KB | 0644 |
|
VersionNumber.php | File | 1.08 KB | 0644 |
|