[@types/google-maps-react] Make Marker and InfoWindow components extandable. (#40132)

* Make Marker and InfoWindow components extandable.
Add missing event handlers for marker props.
Add missing methods and variables for Marker and InfoWindow classes.

* Add missing spaces

* Make google variable in MapProps not optional

* Update index.d.ts

Make google, map and marker attributes required for InfoWindow
This commit is contained in:
Dmitry Savchenko
2019-11-07 20:52:28 +03:00
committed by Nathan Shively-Sanders
parent 9c6cab2f9d
commit c3032cf2a0

View File

@@ -71,14 +71,23 @@ export interface MarkerProps extends Partial<google.maps.MarkerOptions> {
mapCenter?: google.maps.LatLng | google.maps.LatLngLiteral;
onClick?: markerEventHandler;
onMouseover?: markerEventHandler;
onDblclick?: markerEventHandler;
onDragend?: markerEventHandler;
onMousedown?: markerEventHandler;
onMouseout?: markerEventHandler;
onMouseover?: markerEventHandler;
onMouseup?: markerEventHandler;
onRecenter?: markerEventHandler;
}
export class Map extends React.Component<MapProps, any> {
}
export class Marker extends React.Component<MarkerProps, any> {
export class Marker<P extends MarkerProps = MarkerProps, S = any> extends React.Component<P, S> {
marker?: google.maps.Marker;
renderMarker(): void;
getMarker(): Promise<google.maps.Marker>;
}
export class Polygon extends React.Component<any, any> {
@@ -102,7 +111,13 @@ export interface InfoWindowProps extends Partial<google.maps.InfoWindowOptions>
visible?: boolean;
}
export class InfoWindow extends React.Component<InfoWindowProps, any> {
export class InfoWindow<P extends InfoWindowProps = InfoWindowProps, S = any> extends React.Component<P, S> {
renderInfoWindow(): void;
openWindow(): void;
updatePosition(): void;
updateContent(): void;
closeWindow(): void;
renderChildren(): void;
}
export {};