From 36d225c21a520996783dba41bb91ca261b5c98b4 Mon Sep 17 00:00:00 2001 From: Paito Anderson Date: Tue, 28 Apr 2020 17:10:07 -0400 Subject: [PATCH] Update Typings https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/google-maps-react --- index.d.ts | 163 ++++++++++++++++++++++++++++------------------------- 1 file changed, 87 insertions(+), 76 deletions(-) diff --git a/index.d.ts b/index.d.ts index 9499bf60..31bbaeff 100644 --- a/index.d.ts +++ b/index.d.ts @@ -1,108 +1,119 @@ -import 'googlemaps' -import * as React from 'react' - -interface IGoogleApiOptions { - apiKey: string, - libraries?: string[], - client?: string, - url?: string, - version?: string, - language?: string, - region?: string, - LoadingContainer?: any +import 'googlemaps'; +import * as React from 'react'; + +export interface GoogleApiOptions { + apiKey: string; + libraries?: string[]; + client?: string; + url?: string; + version?: string; + language?: string; + region?: string; + LoadingContainer?: any; } -type GoogleApiOptionsFunc = (props: any) => IGoogleApiOptions +export type GoogleApiOptionsFunc = (props: any) => GoogleApiOptions; -type Omit = Pick> +type Omit = Pick>; -export type GoogleAPI = typeof google -export function GoogleApiWrapper(opts: IGoogleApiOptions | GoogleApiOptionsFunc): - (ctor: React.ComponentType) => React.ComponentType> +export type GoogleAPI = typeof google; +export function GoogleApiWrapper(opts: GoogleApiOptions | GoogleApiOptionsFunc): + (ctor: React.ComponentType) => React.ComponentType>; -export interface IProvidedProps { - google: GoogleAPI - loaded?: boolean +export interface ProvidedProps { + google: GoogleAPI; + loaded?: boolean; } -type mapEventHandler = (mapProps?: IMapProps, map?: google.maps.Map, event?) => any - -type Style = Object - -export interface IMapProps extends google.maps.MapOptions { - google: GoogleAPI - loaded?: boolean - - style?: Style - containerStyle?: Style - - bounds?: google.maps.LatLngBounds | google.maps.LatLngBoundsLiteral - centerAroundCurrentLocation?: boolean - initialCenter?: google.maps.LatLngLiteral - center?: google.maps.LatLngLiteral - - visible?: boolean - - onReady?: mapEventHandler - onClick?: mapEventHandler - onDragend?: mapEventHandler - onRecenter?: mapEventHandler - onBoundsChanged?: mapEventHandler - onCenterChanged?: mapEventHandler - onDblclick?: mapEventHandler - onDragstart?: mapEventHandler - onHeadingChange?: mapEventHandler - onIdle?: mapEventHandler - onMaptypeidChanged?: mapEventHandler - onMousemove?: mapEventHandler - onMouseover?: mapEventHandler - onMouseout?: mapEventHandler - onProjectionChanged?: mapEventHandler - onResize?: mapEventHandler - onRightclick?: mapEventHandler - onTilesloaded?: mapEventHandler - onTiltChanged?: mapEventHandler - onZoomChanged?: mapEventHandler +type mapEventHandler = (mapProps?: MapProps, map?: google.maps.Map, event?: any) => any; + +export interface MapProps extends google.maps.MapOptions { + google: GoogleAPI; + loaded?: boolean; + + bounds?: google.maps.LatLngBounds | google.maps.LatLngBoundsLiteral; + centerAroundCurrentLocation?: boolean; + initialCenter?: google.maps.LatLngLiteral; + + visible?: boolean; + + onReady?: mapEventHandler; + onClick?: mapEventHandler; + onDragend?: mapEventHandler; + onRecenter?: mapEventHandler; + onBoundsChanged?: mapEventHandler; + onCenterChanged?: mapEventHandler; + onDblclick?: mapEventHandler; + onDragstart?: mapEventHandler; + onHeadingChange?: mapEventHandler; + onIdle?: mapEventHandler; + onMaptypeidChanged?: mapEventHandler; + onMousemove?: mapEventHandler; + onMouseover?: mapEventHandler; + onMouseout?: mapEventHandler; + onProjectionChanged?: mapEventHandler; + onResize?: mapEventHandler; + onRightclick?: mapEventHandler; + onTilesloaded?: mapEventHandler; + onTiltChanged?: mapEventHandler; + onZoomChanged?: mapEventHandler; } -type markerEventHandler = (props?: IMarkerProps, marker?: google.maps.Marker, event?) => any +type markerEventHandler = (props?: MarkerProps, marker?: google.maps.Marker, event?: any) => any; -export interface IMarkerProps extends Partial { - mapCenter?: google.maps.LatLng | google.maps.LatLngLiteral +export interface MarkerProps extends Partial { + mapCenter?: google.maps.LatLng | google.maps.LatLngLiteral; - onClick?: markerEventHandler - onMouseover?: markerEventHandler + onClick?: markerEventHandler; + onDblclick?: markerEventHandler; + onDragend?: markerEventHandler; + onMousedown?: markerEventHandler; + onMouseout?: markerEventHandler; + onMouseover?: markerEventHandler; + onMouseup?: markerEventHandler; + onRecenter?: markerEventHandler; } -export class Map extends React.Component { - +export class Map extends React.Component { } -export class Marker extends React.Component { +export class Marker

extends React.Component { + marker?: google.maps.Marker; + renderMarker(): void; + getMarker(): Promise; } export class Polygon extends React.Component { - } export class Polyline extends React.Component { - } export class Circle extends React.Component { +} +export class HeatMap extends React.Component { } -export interface IInfoWindowProps extends Partial { - google: typeof google - map: google.maps.Map - marker: google.maps.Marker +export interface InfoWindowProps extends Partial { + google?: typeof google; + map?: google.maps.Map; + marker?: google.maps.Marker; - mapCenter?: google.maps.LatLng | google.maps.LatLngLiteral - visible?: boolean + mapCenter?: google.maps.LatLng | google.maps.LatLngLiteral; + visible?: boolean; + onOpen?: () => void; + onClose?: () => void; } -export class InfoWindow extends React.Component { - +export class InfoWindow

extends React.Component { + renderInfoWindow(): void; + openWindow(): void; + updatePosition(): void; + updateContent(): void; + closeWindow(): void; + renderChildren(): void; } + +export {}; \ No newline at end of file