import * as Core from 'cloudflaredev/core';
import { APIResource } from 'cloudflaredev/resource';
import * as LocationsAPI from 'cloudflaredev/resources/radar/entities/locations';
export declare class Locations extends APIResource {
    /**
     * Get a list of locations.
     */
    list(query?: LocationListParams, options?: Core.RequestOptions): Core.APIPromise<LocationListResponse>;
    list(options?: Core.RequestOptions): Core.APIPromise<LocationListResponse>;
    /**
     * Get the requested location information. A confidence level below `5` indicates a
     * low level of confidence in the traffic data - normally this happens because
     * Cloudflare has a small amount of traffic from/to this location).
     */
    get(location: string, query?: LocationGetParams, options?: Core.RequestOptions): Core.APIPromise<LocationGetResponse>;
    get(location: string, options?: Core.RequestOptions): Core.APIPromise<LocationGetResponse>;
}
export interface LocationListResponse {
    locations: Array<LocationListResponse.Location>;
}
export declare namespace LocationListResponse {
    interface Location {
        alpha2: string;
        latitude: string;
        longitude: string;
        name: string;
    }
}
export interface LocationGetResponse {
    location: LocationGetResponse.Location;
}
export declare namespace LocationGetResponse {
    interface Location {
        alpha2: string;
        confidenceLevel: number;
        latitude: string;
        longitude: string;
        name: string;
        region: string;
        subregion: string;
    }
}
export interface LocationListParams {
    /**
     * Format results are returned in.
     */
    format?: 'JSON' | 'CSV';
    /**
     * Limit the number of objects in the response.
     */
    limit?: number;
    /**
     * Comma separated list of locations.
     */
    location?: string;
    /**
     * Number of objects to skip before grabbing results.
     */
    offset?: number;
}
export interface LocationGetParams {
    /**
     * Format results are returned in.
     */
    format?: 'JSON' | 'CSV';
}
export declare namespace Locations {
    export import LocationListResponse = LocationsAPI.LocationListResponse;
    export import LocationGetResponse = LocationsAPI.LocationGetResponse;
    export import LocationListParams = LocationsAPI.LocationListParams;
    export import LocationGetParams = LocationsAPI.LocationGetParams;
}
//# sourceMappingURL=locations.d.ts.map