/// <reference types="googlemaps" />
export declare const locationQuery: (bounds: google.maps.LatLngBounds, searchField?: string) => {
    geo_bounding_box: {
        [x: string]: {
            top_left: {
                lat: number;
                lon: number;
            };
            bottom_right: {
                lat: number;
                lon: number;
            };
        };
    };
};
export declare const fillColor = "#00F";
export declare const strokeColor = "#00A";
export declare const fillStyle: {
    fillColor: string;
    fillOpacity: number;
};
export declare const strokeStyle: {
    strokeColor: string;
    strokeOpacity: number;
    strokeWeight: number;
};
export declare const clustererImage = "https://developers.google.com/maps/documentation/javascript/examples/markerclusterer/m";
interface IMarkerPieConfig {
    percent: number;
    color: string;
}
export declare const markerPie: (configs: IMarkerPieConfig[], size?: number) => {
    anchor: google.maps.Point;
    url: string;
    labelOrigin: google.maps.Point;
};
export declare const markerIcon: (scale?: number) => google.maps.Symbol;
export declare const createMarker: (position?: google.maps.LatLng | google.maps.ReadonlyLatLngLiteral, text?: string, color?: string, scale?: number) => google.maps.Marker;
interface IPolygon {
    type: 'Polygon';
    coordinates: number[][][];
}
interface IMultiPolygon {
    type: 'MultiPolygon';
    coordinates: number[][][];
}
declare type geometry = IPolygon | IMultiPolygon;
export interface IFeature {
    type: 'Feature';
    properties: any;
    geometry: geometry;
}
export interface IFeatureCollection {
    type: 'FeatureCollection';
    features: IFeature[];
}
export interface IGeometryCollection {
    type: 'GeometryCollection';
    geometries: geometry[];
}
declare type feature = IFeature | IFeatureCollection | IGeometryCollection | IPolygon | IMultiPolygon;
declare const feature: IFeature;
export declare const defaultFeature: () => IFeature;
export declare const pointToCoordinates: (point: google.maps.LatLng) => number[];
export declare const coordinatesToPoint: (values: (number | number[])[]) => any;
export declare const polygonToCoordinates: (polygon: google.maps.Polygon) => number[][];
export declare const addPolygonToFeature: (feat: feature, polygon: google.maps.Polygon) => any;
export declare const polygonsFromFeature: (feat: feature) => google.maps.Polygon[];
export declare const polygonBounds: (polygon?: google.maps.Polygon | google.maps.Polygon[]) => google.maps.LatLngBounds;
export {};
