Skip to content

Commit 434e73b

Browse files
committed
fix: add static types to Serializer facade
1 parent 1578cd9 commit 434e73b

File tree

2 files changed

+29
-5
lines changed

2 files changed

+29
-5
lines changed

config/serializer.php

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,19 @@
22

33
declare(strict_types=1);
44

5+
use Symfony\Component\Serializer\Mapping\Loader\LoaderInterface;
6+
use WayOfDev\Serializer\Contracts\EncoderRegistrationStrategy;
7+
use WayOfDev\Serializer\Contracts\NormalizerRegistrationStrategy;
8+
use WayOfDev\Serializer\DefaultEncoderRegistrationStrategy;
9+
use WayOfDev\Serializer\DefaultNormalizerRegistrationStrategy;
10+
511
/**
612
* @return array{
713
* default: string,
814
* debug: bool,
9-
* normalizerRegistrationStrategy: class-string<WayOfDev\Serializer\Contracts\NormalizerRegistrationStrategy>,
10-
* encoderRegistrationStrategy: class-string<WayOfDev\Serializer\Contracts\EncoderRegistrationStrategy>,
11-
* metadataLoader: class-string<Symfony\Component\Serializer\Mapping\Loader\LoaderInterface>|null,
15+
* normalizerRegistrationStrategy: class-string<NormalizerRegistrationStrategy>,
16+
* encoderRegistrationStrategy: class-string<EncoderRegistrationStrategy>,
17+
* metadataLoader: class-string<LoaderInterface>|null,
1218
* }
1319
*/
1420
return [
@@ -38,7 +44,7 @@
3844
* Allows you to specify the strategy class for registering your normalizers.
3945
* Default is 'WayOfDev\Serializer\DefaultNormalizerRegistrationStrategy'.
4046
*/
41-
'normalizerRegistrationStrategy' => WayOfDev\Serializer\DefaultNormalizerRegistrationStrategy::class,
47+
'normalizerRegistrationStrategy' => DefaultNormalizerRegistrationStrategy::class,
4248

4349
/*
4450
* Allows you to register your custom encoders.
@@ -53,7 +59,7 @@
5359
* You can replace the default encoders with your custom ones by implementing
5460
* your own registration strategy.
5561
*/
56-
'encoderRegistrationStrategy' => WayOfDev\Serializer\DefaultEncoderRegistrationStrategy::class,
62+
'encoderRegistrationStrategy' => DefaultEncoderRegistrationStrategy::class,
5763

5864
/*
5965
* Allows you to register your custom metadata loader.

src/Bridge/Laravel/Facades/Serializer.php

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,26 @@
44

55
namespace WayOfDev\Serializer\Bridge\Laravel\Facades;
66

7+
use ArrayObject;
78
use Illuminate\Support\Facades\Facade;
9+
use Symfony\Component\Serializer\Normalizer\DenormalizerInterface;
10+
use Symfony\Component\Serializer\Normalizer\NormalizerInterface;
811

12+
/**
13+
* @method static string serialize(mixed $data, string $format, array $context = [])
14+
* @method static mixed deserialize(string $data, string $type, string $format, array $context = [])
15+
* @method static array|string|int|float|bool|ArrayObject|null normalize(mixed $data, string $format, array $context = [])
16+
* @method static mixed denormalize(mixed $data, string $type, ?string $format = null, array $context = [])
17+
* @method static array getSupportedTypes(?string $format)
18+
* @method static bool supportsNormalization(mixed $data, ?string $format = null, array $context = [])
19+
* @method static bool supportsDenormalization(mixed $data, string $type, ?string $format = null, array $context = [])
20+
* @method static NormalizerInterface|null getNormalizer(mixed $data, ?string $format, array $context)
21+
* @method static DenormalizerInterface|null getDenormalizer(mixed $data, string $type, ?string $format, array $context)
22+
* @method static string encode(mixed $data, string $format, array $context = [])
23+
* @method static mixed decode(string $data, string $type, string $format, array $context = [])
24+
* @method static bool supportsEncoding(string $format, array $context = [])
25+
* @method static bool supportsDecoding(string $format, array $context = [])
26+
*/
927
class Serializer extends Facade
1028
{
1129
protected static function getFacadeAccessor(): string

0 commit comments

Comments
 (0)