You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
27 lines
920 B
PHP
27 lines
920 B
PHP
<?php
|
|
|
|
namespace Ae3\LaravelGeoLayer\app\Services\Contracts;
|
|
|
|
use Ae3\LaravelGeoLayer\app\DataTransferObjects\GeocodingResponseData;
|
|
|
|
interface GeocodingServiceContract
|
|
{
|
|
/**
|
|
* Retrieves the coordinates for the given address.
|
|
*
|
|
* @param string $address The address to retrieve coordinates for.
|
|
*
|
|
* @return GeocodingResponseData An object containing the latitude and longitude coordinates.
|
|
*/
|
|
public function getCoordinatesForAddress(string $address): GeocodingResponseData;
|
|
|
|
/**
|
|
* Retrieves the address for the given coordinates.
|
|
*
|
|
* @param float $latitude The latitude of the coordinates.
|
|
* @param float $longitude The longitude of the coordinates.
|
|
*
|
|
* @return GeocodingResponseData The address information for the given coordinates.
|
|
*/
|
|
public function getAddressForCoordinates(float $latitude, float $longitude): GeocodingResponseData;
|
|
} |