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.
laravel-geo-layer/src/app/Services/Contracts/GeocodingServiceContract.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;
}