. */ declare(strict_types=1); namespace App\Services\InfoProviderSystem\Providers; /** * If an interface */ interface URLHandlerInfoProviderInterface { /** * Returns a list of supported domains (e.g. ["digikey.com"]) * @return array An array of supported domains */ public function getHandledDomains(): array; /** * Extracts the unique ID of a part from a given URL. It is okay if this is not a canonical ID, as long as it can be used to uniquely identify the part within this provider. * @param string $url The URL to extract the ID from * @return string|null The extracted ID, or null if the URL is not valid for this provider */ public function getIDFromURL(string $url): ?string; }