export type MapConfiguration = {
    ordnanceSurveyApiKey: string;
    ordnanceSurveyApiSecret: string;
};
/**
 * Map proxy query params
 */
export type MapProxyQuery = {
    /**
     * - the proxied url
     */
    url: string;
};
/**
 * Map geocode query params
 */
export type MapGeocodeQuery = {
    /**
     * - name query
     */
    query: string;
};
/**
 * Map reverse geocode query params
 */
export type MapReverseGeocodeQuery = {
    /**
     * - the Easting point
     */
    easting: number;
    /**
     * - the Northing point
     */
    northing: number;
};
/**
 * Geospatial countries query params
 */
export type GeospatialCountriesQuery = {
    /**
     * - the country to omit
     */
    omit: string;
    /**
     * - the country to include
     */
    only: string;
};
/**
 * Map geocode get request
 */
export type MapProxyGetRequestRefs = {
    /**
     * - Request query
     */
    Query: MapProxyQuery;
};
/**
 * Map geocode get request
 */
export type MapGeocodeGetRequestRefs = {
    /**
     * - Request query
     */
    Query: MapGeocodeQuery;
};
/**
 * Map reverse geocode get request
 */
export type MapReverseGeocodeGetRequestRefs = {
    /**
     * - Request query
     */
    Query: MapReverseGeocodeQuery;
};
/**
 * Map countries geojson get request
 */
export type GeospatialCountriesGetRequestRefs = {
    /**
     * - Request query
     */
    Query: GeospatialCountriesQuery;
};
export type MapProxyRequestRefs = MapProxyGetRequestRefs;
export type MapGeocodeRequestRefs = MapGeocodeGetRequestRefs;
export type MapReverseGeocodeRequestRefs = MapReverseGeocodeGetRequestRefs;
export type MapProxyGetRequest = Request<MapGeocodeGetRequestRefs>;
export type MapGeocodeGetRequest = Request<MapGeocodeGetRequestRefs>;
export type MapReverseGeocodeGetRequest = Request<MapReverseGeocodeGetRequestRefs>;
export type MapRequest = MapProxyGetRequest | MapGeocodeGetRequest | MapReverseGeocodeGetRequest;
export type OsNamesFindResponse = {
    /**
     * - Metadata about the search request and results.
     */
    header: OsNamesFindHeader;
    /**
     * - An array of matched place records from the search.
     */
    results: OsNamesFindResult[];
};
export type OsNamesFindHeader = {
    /**
     * - The query URI (usually same as search text).
     */
    uri: string;
    /**
     * - The original text query string passed to the API.
     */
    query: string;
    /**
     * - The response format returned (e.g., "JSON").
     */
    format: string;
    /**
     * - The maximum number of results requested.
     */
    maxresults: number;
    /**
     * - The offset used in the search results.
     */
    offset: number;
    /**
     * - The total number of results that matched the query.
     */
    totalresults: number;
    /**
     * - The original filter string passed to the API.
     */
    filter: string;
};
export type OsNamesFindGazetteerEntry = {
    /**
     * - Unique identifier for the place/feature.
     */
    ID: string;
    /**
     * - A URI (identifier) for this named feature.
     */
    NAMES_URI: string;
    /**
     * - Primary name of the feature.
     */
    NAME1: string;
    /**
     * - General type classification of the feature.
     */
    TYPE: string;
    /**
     * - Local or more specific type classification.
     */
    LOCAL_TYPE: string;
    /**
     * - Easting coordinate (British National Grid).
     */
    GEOMETRY_X: number;
    /**
     * - Northing coordinate (British National Grid).
     */
    GEOMETRY_Y: number;
    /**
     * - Most detailed resolution available.
     */
    MOST_DETAIL_VIEW_RES: number;
    /**
     * - Least detailed resolution available.
     */
    LEAST_DETAIL_VIEW_RES: number;
    /**
     * - Minimum bounding box X (easting).
     */
    MBR_XMIN?: number | undefined;
    /**
     * - Minimum bounding box Y (northing).
     */
    MBR_YMIN?: number | undefined;
    /**
     * - Maximum bounding box X (easting).
     */
    MBR_XMAX?: number | undefined;
    /**
     * - Maximum bounding box Y (northing).
     */
    MBR_YMAX?: number | undefined;
    /**
     * - (Optional) District borough.
     */
    DISTRICT_BOROUGH?: string | undefined;
    /**
     * - (Optional) URI for the district borough.
     */
    DISTRICT_BOROUGH_URI?: string | undefined;
    /**
     * - (Optional) Type of the district borough.
     */
    DISTRICT_BOROUGH_TYPE?: string | undefined;
    /**
     * - (Optional) Postcode district.
     */
    POSTCODE_DISTRICT?: string | undefined;
    /**
     * - (Optional) URI for the postcode district.
     */
    POSTCODE_DISTRICT_URI?: string | undefined;
    /**
     * - (Optional) Name of associated populated place.
     */
    POPULATED_PLACE?: string | undefined;
    /**
     * - (Optional) URI of populated place.
     */
    POPULATED_PLACE_URI?: string | undefined;
    /**
     * - (Optional) Type of populated place.
     */
    POPULATED_PLACE_TYPE?: string | undefined;
    /**
     * - (Optional) County or unitary authority name.
     */
    COUNTY_UNITARY?: string | undefined;
    /**
     * - (Optional) URI for county/unitary authority.
     */
    COUNTY_UNITARY_URI?: string | undefined;
    /**
     * - (Optional) Classification of county/unitary authority.
     */
    COUNTY_UNITARY_TYPE?: string | undefined;
    /**
     * - (Optional) Region name.
     */
    REGION?: string | undefined;
    /**
     * - (Optional) URI for region.
     */
    REGION_URI?: string | undefined;
    /**
     * - (Optional) Country name.
     */
    COUNTRY?: string | undefined;
    /**
     * - (Optional) URI for country.
     */
    COUNTRY_URI?: string | undefined;
};
/**
 * OS names GAZETTEER_ENTRY response
 */
export type OsNamesFindResult = {
    /**
     * - Gazetteer entry
     */
    GAZETTEER_ENTRY: OsNamesFindGazetteerEntry;
};
import type { Request } from '@hapi/hapi';
