24 lines
510 B
PHP
24 lines
510 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Services\Countries;
|
|
|
|
interface CountryRemoteProviderInterface
|
|
{
|
|
/**
|
|
* Fetch and normalize all remote countries.
|
|
*
|
|
* @return array<int, array<string, mixed>>
|
|
*/
|
|
public function fetchAll(): array;
|
|
|
|
/**
|
|
* Normalize a raw payload into syncable country records.
|
|
*
|
|
* @param array<int, mixed> $payload
|
|
* @return array<int, array<string, mixed>>
|
|
*/
|
|
public function normalizePayload(array $payload): array;
|
|
}
|