mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2026-10-07 00:07:07 +00:00
[react-google-places-suggest] Create type definitions (#25557)
This commit is contained in:
+34
@@ -0,0 +1,34 @@
|
||||
// Type definitions for react-google-places-suggest 3.4
|
||||
// Project: https://xuopled.github.io/react-google-places-suggest
|
||||
// Definitions by: Vasily Nesterov <https://github.com/vasilysn>
|
||||
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
||||
// TypeScript Version: 2.6
|
||||
|
||||
/// <reference types="googlemaps" />
|
||||
import { Component, ReactNode } from "react";
|
||||
|
||||
export default ReactGooglePlacesSuggest;
|
||||
|
||||
declare class ReactGooglePlacesSuggest extends Component<
|
||||
ReactGooglePlacesSuggest.Props
|
||||
> { }
|
||||
|
||||
declare namespace ReactGooglePlacesSuggest {
|
||||
type Prediction = google.maps.places.AutocompletePrediction;
|
||||
type GeocodedPrediction = google.maps.GeocoderResult;
|
||||
|
||||
interface Props {
|
||||
autocompletionRequest: google.maps.places.AutocompletionRequest;
|
||||
children?: ReactNode;
|
||||
customRender?: (prediction?: Prediction) => JSX.Element | string;
|
||||
customContainerRender?: (
|
||||
predictions: ReadonlyArray<Prediction>
|
||||
) => JSX.Element | string;
|
||||
googleMaps: typeof google.maps;
|
||||
onSelectSuggest?: (
|
||||
geocodedPrediction: GeocodedPrediction,
|
||||
originalPrediction: Prediction
|
||||
) => any;
|
||||
textNoResults?: string | null;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
import * as React from "react";
|
||||
import ReactGooglePlacesSuggest from "react-google-places-suggest";
|
||||
|
||||
const defaultProps: ReactGooglePlacesSuggest.Props = {
|
||||
googleMaps: google.maps,
|
||||
autocompletionRequest: { input: "" }
|
||||
};
|
||||
|
||||
const ReactGooglePlacesSuggestWithChildrenTest: React.SFC = () => (
|
||||
<ReactGooglePlacesSuggest {...defaultProps}>
|
||||
<div />
|
||||
</ReactGooglePlacesSuggest>
|
||||
);
|
||||
|
||||
const ReactGooglePlacesSuggestWithTextNoResultsPropTest: React.SFC = () => (
|
||||
<ReactGooglePlacesSuggest {...defaultProps} textNoResults="No results..." />
|
||||
);
|
||||
|
||||
const ReactGooglePlacesSuggestWithCustomRenderPropTest: React.SFC = () => (
|
||||
<ReactGooglePlacesSuggest
|
||||
{...defaultProps}
|
||||
customRender={(prediction?: ReactGooglePlacesSuggest.Prediction) => {
|
||||
return "123";
|
||||
}}
|
||||
/>
|
||||
);
|
||||
|
||||
const ReactGooglePlacesSuggestWithOnSelectSuggestPropTest: React.SFC = () => (
|
||||
<ReactGooglePlacesSuggest
|
||||
{...defaultProps}
|
||||
onSelectSuggest={(geocodedPrediction, originalPrediction) => {
|
||||
return "123";
|
||||
}}
|
||||
/>
|
||||
);
|
||||
|
||||
const ReactGooglePlacesSuggestWithCustomContainerRenderPropTest: React.SFC = () => (
|
||||
<ReactGooglePlacesSuggest
|
||||
{...defaultProps}
|
||||
customContainerRender={(
|
||||
predictions: ReadonlyArray<ReactGooglePlacesSuggest.Prediction>
|
||||
) => {
|
||||
return "123";
|
||||
}}
|
||||
/>
|
||||
);
|
||||
@@ -0,0 +1,25 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"module": "commonjs",
|
||||
"lib": [
|
||||
"es6",
|
||||
"dom"
|
||||
],
|
||||
"noImplicitAny": true,
|
||||
"noImplicitThis": true,
|
||||
"strictNullChecks": true,
|
||||
"strictFunctionTypes": true,
|
||||
"jsx": "react",
|
||||
"baseUrl": "../",
|
||||
"typeRoots": [
|
||||
"../"
|
||||
],
|
||||
"types": [],
|
||||
"noEmit": true,
|
||||
"forceConsistentCasingInFileNames": true
|
||||
},
|
||||
"files": [
|
||||
"index.d.ts",
|
||||
"react-google-places-suggest-tests.tsx"
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
{ "extends": "dtslint/dt.json" }
|
||||
Reference in New Issue
Block a user