/** * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy of * the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations under * the License. */ /// import type { LngLatArray } from './marker-attributes'; type PositionFormat = { isValid(value: unknown): value is T; toLatLng(value: T): google.maps.LatLng; fromLatLng(value: google.maps.LatLng): T; }; /** Union type of all position-formats supported by the markers. */ export type Position = google.maps.LatLngLiteral | google.maps.LatLng | LngLatArray; /** The supported position-formats. */ export declare const positionFormats: (PositionFormat | PositionFormat | PositionFormat)[]; /** * Returns the position-format for the specified datum. * * @param p */ export declare function getPositionFormat(p: Position): PositionFormat; /** * Converts the specified datum into the google.maps.LatLng format used * internally. * * @param p */ export declare function toLatLng(p: Position): google.maps.LatLng; export {};