import type * as gax from 'google-gax'; import type { Callback, CallOptions, Descriptors, ClientOptions } from 'google-gax'; import * as protos from '../../protos/protos'; /** * Service definition for the Places API. * Note: every request (except for Autocomplete and GetPhotoMedia requests) * requires a field mask set outside of the request proto (`all/*`, is not * assumed). The field mask can be set via the HTTP header `X-Goog-FieldMask`. * See: * https://developers.google.com/maps/documentation/places/web-service/choose-fields * @class * @memberof v1 */ export declare class PlacesClient { private _terminated; private _opts; private _providedCustomServicePath; private _gaxModule; private _gaxGrpc; private _protos; private _defaults; private _universeDomain; private _servicePath; private _log; auth: gax.GoogleAuth; descriptors: Descriptors; warn: (code: string, message: string, warnType?: string) => void; innerApiCalls: { [name: string]: Function; }; pathTemplates: { [name: string]: gax.PathTemplate; }; placesStub?: Promise<{ [name: string]: Function; }>; /** * Construct an instance of PlacesClient. * * @param {object} [options] - The configuration object. * The options accepted by the constructor are described in detail * in [this document](https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#creating-the-client-instance). * The common options are: * @param {object} [options.credentials] - Credentials object. * @param {string} [options.credentials.client_email] * @param {string} [options.credentials.private_key] * @param {string} [options.email] - Account email address. Required when * using a .pem or .p12 keyFilename. * @param {string} [options.keyFilename] - Full path to the a .json, .pem, or * .p12 key downloaded from the Google Developers Console. If you provide * a path to a JSON file, the projectId option below is not necessary. * NOTE: .pem and .p12 require you to specify options.email as well. * @param {number} [options.port] - The port on which to connect to * the remote host. * @param {string} [options.projectId] - The project ID from the Google * Developer's Console, e.g. 'grape-spaceship-123'. We will also check * the environment variable GCLOUD_PROJECT for your project ID. If your * app is running in an environment which supports * {@link https://cloud.google.com/docs/authentication/application-default-credentials Application Default Credentials}, * your project ID will be detected automatically. * @param {string} [options.apiEndpoint] - The domain name of the * API remote host. * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override. * Follows the structure of {@link gapicConfig}. * @param {boolean} [options.fallback] - Use HTTP/1.1 REST mode. * For more information, please check the * {@link https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#http11-rest-api-mode documentation}. * @param {gax} [gaxInstance]: loaded instance of `google-gax`. Useful if you * need to avoid loading the default gRPC version and want to use the fallback * HTTP implementation. Load only fallback version and pass it to the constructor: * ``` * const gax = require('google-gax/build/src/fallback'); // avoids loading google-gax with gRPC * const client = new PlacesClient({fallback: true}, gax); * ``` */ constructor(opts?: ClientOptions, gaxInstance?: typeof gax | typeof gax.fallback); /** * Initialize the client. * Performs asynchronous operations (such as authentication) and prepares the client. * This function will be called automatically when any class method is called for the * first time, but if you need to initialize it before calling an actual method, * feel free to call initialize() directly. * * You can await on this method if you want to make sure the client is initialized. * * @returns {Promise} A promise that resolves to an authenticated service stub. */ initialize(): Promise<{ [name: string]: Function; }>; /** * The DNS address for this API service. * @deprecated Use the apiEndpoint method of the client instance. * @returns {string} The DNS address for this service. */ static get servicePath(): string; /** * The DNS address for this API service - same as servicePath. * @deprecated Use the apiEndpoint method of the client instance. * @returns {string} The DNS address for this service. */ static get apiEndpoint(): string; /** * The DNS address for this API service. * @returns {string} The DNS address for this service. */ get apiEndpoint(): string; get universeDomain(): string; /** * The port for this API service. * @returns {number} The default port for this service. */ static get port(): number; /** * The scopes needed to make gRPC calls for every method defined * in this service. * @returns {string[]} List of default scopes. */ static get scopes(): string[]; getProjectId(): Promise; getProjectId(callback: Callback): void; /** * Search for places near locations. * * @param {Object} request * The request object that will be sent. * @param {string} request.languageCode * Place details will be displayed with the preferred language if available. * If the language code is unspecified or unrecognized, place details of any * language may be returned, with a preference for English if such details * exist. * * Current list of supported languages: * https://developers.google.com/maps/faq#languagesupport. * @param {string} request.regionCode * The Unicode country/region code (CLDR) of the location where the * request is coming from. This parameter is used to display the place * details, like region-specific place name, if available. The parameter can * affect results based on applicable law. * * For more information, see * https://www.unicode.org/cldr/charts/latest/supplemental/territory_language_information.html. * * * Note that 3-digit region codes are not currently supported. * @param {string[]} request.includedTypes * Included Place type (eg, "restaurant" or "gas_station") from * https://developers.google.com/maps/documentation/places/web-service/place-types. * * Up to 50 types from [Table * A](https://developers.google.com/maps/documentation/places/web-service/place-types#table-a) * may be specified. * * If there are any conflicting types, i.e. a type appears in both * included_types and excluded_types, an INVALID_ARGUMENT error is * returned. * * If a Place type is specified with multiple type restrictions, only places * that satisfy all of the restrictions are returned. For example, if we * have {included_types = ["restaurant"], excluded_primary_types = * ["restaurant"]}, the returned places provide "restaurant" * related services but do not operate primarily as "restaurants". * @param {string[]} request.excludedTypes * Excluded Place type (eg, "restaurant" or "gas_station") from * https://developers.google.com/maps/documentation/places/web-service/place-types. * * Up to 50 types from [Table * A](https://developers.google.com/maps/documentation/places/web-service/place-types#table-a) * may be specified. * * If the client provides both included_types (e.g. restaurant) and * excluded_types (e.g. cafe), then the response should include places that * are restaurant but not cafe. The response includes places that match at * least one of the included_types and none of the excluded_types. * * If there are any conflicting types, i.e. a type appears in both * included_types and excluded_types, an INVALID_ARGUMENT error is returned. * * If a Place type is specified with multiple type restrictions, only places * that satisfy all of the restrictions are returned. For example, if we * have {included_types = ["restaurant"], excluded_primary_types = * ["restaurant"]}, the returned places provide "restaurant" * related services but do not operate primarily as "restaurants". * @param {string[]} request.includedPrimaryTypes * Included primary Place type (e.g. "restaurant" or "gas_station") from * https://developers.google.com/maps/documentation/places/web-service/place-types. * A place can only have a single primary type from the supported types table * associated with it. * * Up to 50 types from [Table * A](https://developers.google.com/maps/documentation/places/web-service/place-types#table-a) * may be specified. * * If there are any conflicting primary types, i.e. a type appears in both * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT * error is returned. * * If a Place type is specified with multiple type restrictions, only places * that satisfy all of the restrictions are returned. For example, if we * have {included_types = ["restaurant"], excluded_primary_types = * ["restaurant"]}, the returned places provide "restaurant" * related services but do not operate primarily as "restaurants". * @param {string[]} request.excludedPrimaryTypes * Excluded primary Place type (e.g. "restaurant" or "gas_station") from * https://developers.google.com/maps/documentation/places/web-service/place-types. * * Up to 50 types from [Table * A](https://developers.google.com/maps/documentation/places/web-service/place-types#table-a) * may be specified. * * If there are any conflicting primary types, i.e. a type appears in both * included_primary_types and excluded_primary_types, an INVALID_ARGUMENT * error is returned. * * If a Place type is specified with multiple type restrictions, only places * that satisfy all of the restrictions are returned. For example, if we * have {included_types = ["restaurant"], excluded_primary_types = * ["restaurant"]}, the returned places provide "restaurant" * related services but do not operate primarily as "restaurants". * @param {number} request.maxResultCount * Maximum number of results to return. It must be between 1 and 20 (default), * inclusively. If the number is unset, it falls back to the upper limit. If * the number is set to negative or exceeds the upper limit, an * INVALID_ARGUMENT error is returned. * @param {google.maps.places.v1.SearchNearbyRequest.LocationRestriction} request.locationRestriction * Required. The region to search. * @param {google.maps.places.v1.SearchNearbyRequest.RankPreference} request.rankPreference * How results will be ranked in the response. * @param {google.maps.places.v1.RoutingParameters} [request.routingParameters] * Optional. Parameters that affect the routing to the search results. * @param {boolean} [request.includeFutureOpeningBusinesses] * Optional. If true, include businesses that are not yet open but will open * in the future. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.maps.places.v1.SearchNearbyResponse|SearchNearbyResponse}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/places.search_nearby.js * region_tag:places_v1_generated_Places_SearchNearby_async */ searchNearby(request?: protos.google.maps.places.v1.ISearchNearbyRequest, options?: CallOptions): Promise<[ protos.google.maps.places.v1.ISearchNearbyResponse, protos.google.maps.places.v1.ISearchNearbyRequest | undefined, {} | undefined ]>; searchNearby(request: protos.google.maps.places.v1.ISearchNearbyRequest, options: CallOptions, callback: Callback): void; searchNearby(request: protos.google.maps.places.v1.ISearchNearbyRequest, callback: Callback): void; /** * Text query based place search. * * @param {Object} request * The request object that will be sent. * @param {string} request.textQuery * Required. The text query for textual search. * @param {string} request.languageCode * Place details will be displayed with the preferred language if available. * If the language code is unspecified or unrecognized, place details of any * language may be returned, with a preference for English if such details * exist. * * Current list of supported languages: * https://developers.google.com/maps/faq#languagesupport. * @param {string} request.regionCode * The Unicode country/region code (CLDR) of the location where the * request is coming from. This parameter is used to display the place * details, like region-specific place name, if available. The parameter can * affect results based on applicable law. * * For more information, see * https://www.unicode.org/cldr/charts/latest/supplemental/territory_language_information.html. * * * Note that 3-digit region codes are not currently supported. * @param {google.maps.places.v1.SearchTextRequest.RankPreference} request.rankPreference * How results will be ranked in the response. * @param {string} request.includedType * The requested place type. Full list of types supported: * https://developers.google.com/maps/documentation/places/web-service/place-types. * Only support one included type. * @param {boolean} request.openNow * Used to restrict the search to places that are currently open. The default * is false. * @param {number} request.minRating * Filter out results whose average user rating is strictly less than this * limit. A valid value must be a float between 0 and 5 (inclusively) at a * 0.5 cadence i.e. [0, 0.5, 1.0, ... , 5.0] inclusively. The input rating * will round up to the nearest 0.5(ceiling). For instance, a rating of 0.6 * will eliminate all results with a less than 1.0 rating. * @param {number} request.maxResultCount * Maximum number of results to return. It must be between 1 and 20, * inclusively. The default is 20. If the number is unset, it falls back to * the upper limit. If the number is set to negative or exceeds the upper * limit, an INVALID_ARGUMENT error is returned. * @param {number[]} request.priceLevels * Used to restrict the search to places that are marked as certain price * levels. Users can choose any combinations of price levels. Default to * select all price levels. * @param {boolean} request.strictTypeFiltering * Used to set strict type filtering for included_type. If set to true, only * results of the same type will be returned. Default to false. * @param {google.maps.places.v1.SearchTextRequest.LocationBias} request.locationBias * The region to search. This location serves as a bias which means results * around given location might be returned. Cannot be set along with * location_restriction. * @param {google.maps.places.v1.SearchTextRequest.LocationRestriction} request.locationRestriction * The region to search. This location serves as a restriction which means * results outside given location will not be returned. Cannot be set along * with location_bias. * @param {google.maps.places.v1.SearchTextRequest.EVOptions} [request.evOptions] * Optional. Set the searchable EV options of a place search request. * @param {google.maps.places.v1.RoutingParameters} [request.routingParameters] * Optional. Additional parameters for routing to results. * @param {google.maps.places.v1.SearchTextRequest.SearchAlongRouteParameters} [request.searchAlongRouteParameters] * Optional. Additional parameters proto for searching along a route. * @param {boolean} [request.includePureServiceAreaBusinesses] * Optional. Include pure service area businesses if the field is set to true. * Pure service area business is a business that visits or delivers to * customers directly but does not serve customers at their business address. * For example, businesses like cleaning services or plumbers. Those * businesses do not have a physical address or location on Google Maps. * Places will not return fields including `location`, `plus_code`, and other * location related fields for these businesses. * @param {boolean} [request.includeFutureOpeningBusinesses] * Optional. If true, include businesses that are not yet open but will open * in the future. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.maps.places.v1.SearchTextResponse|SearchTextResponse}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/places.search_text.js * region_tag:places_v1_generated_Places_SearchText_async */ searchText(request?: protos.google.maps.places.v1.ISearchTextRequest, options?: CallOptions): Promise<[ protos.google.maps.places.v1.ISearchTextResponse, protos.google.maps.places.v1.ISearchTextRequest | undefined, {} | undefined ]>; searchText(request: protos.google.maps.places.v1.ISearchTextRequest, options: CallOptions, callback: Callback): void; searchText(request: protos.google.maps.places.v1.ISearchTextRequest, callback: Callback): void; /** * Get a photo media with a photo reference string. * * @param {Object} request * The request object that will be sent. * @param {string} request.name * Required. The resource name of a photo media in the format: * `places/{place_id}/photos/{photo_reference}/media`. * * The resource name of a photo as returned in a Place object's `photos.name` * field comes with the format * `places/{place_id}/photos/{photo_reference}`. You need to append `/media` * at the end of the photo resource to get the photo media resource name. * @param {number} [request.maxWidthPx] * Optional. Specifies the maximum desired width, in pixels, of the image. If * the image is smaller than the values specified, the original image will be * returned. If the image is larger in either dimension, it will be scaled to * match the smaller of the two dimensions, restricted to its original aspect * ratio. Both the max_height_px and max_width_px properties accept an integer * between 1 and 4800, inclusively. If the value is not within the allowed * range, an INVALID_ARGUMENT error will be returned. * * At least one of max_height_px or max_width_px needs to be specified. If * neither max_height_px nor max_width_px is specified, an INVALID_ARGUMENT * error will be returned. * @param {number} [request.maxHeightPx] * Optional. Specifies the maximum desired height, in pixels, of the image. If * the image is smaller than the values specified, the original image will be * returned. If the image is larger in either dimension, it will be scaled to * match the smaller of the two dimensions, restricted to its original aspect * ratio. Both the max_height_px and max_width_px properties accept an integer * between 1 and 4800, inclusively. If the value is not within the allowed * range, an INVALID_ARGUMENT error will be returned. * * At least one of max_height_px or max_width_px needs to be specified. If * neither max_height_px nor max_width_px is specified, an INVALID_ARGUMENT * error will be returned. * @param {boolean} [request.skipHttpRedirect] * Optional. If set, skip the default HTTP redirect behavior and render a text * format (for example, in JSON format for HTTP use case) response. If not * set, an HTTP redirect will be issued to redirect the call to the image * media. This option is ignored for non-HTTP requests. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.maps.places.v1.PhotoMedia|PhotoMedia}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/places.get_photo_media.js * region_tag:places_v1_generated_Places_GetPhotoMedia_async */ getPhotoMedia(request?: protos.google.maps.places.v1.IGetPhotoMediaRequest, options?: CallOptions): Promise<[ protos.google.maps.places.v1.IPhotoMedia, protos.google.maps.places.v1.IGetPhotoMediaRequest | undefined, {} | undefined ]>; getPhotoMedia(request: protos.google.maps.places.v1.IGetPhotoMediaRequest, options: CallOptions, callback: Callback): void; getPhotoMedia(request: protos.google.maps.places.v1.IGetPhotoMediaRequest, callback: Callback): void; /** * Get the details of a place based on its resource name, which is a string * in the `places/{place_id}` format. * * @param {Object} request * The request object that will be sent. * @param {string} request.name * Required. The resource name of a place, in the `places/{place_id}` format. * @param {string} [request.languageCode] * Optional. Place details will be displayed with the preferred language if * available. * * Current list of supported languages: * https://developers.google.com/maps/faq#languagesupport. * @param {string} [request.regionCode] * Optional. The Unicode country/region code (CLDR) of the location where the * request is coming from. This parameter is used to display the place * details, like region-specific place name, if available. The parameter can * affect results based on applicable law. * For more information, see * https://www.unicode.org/cldr/charts/latest/supplemental/territory_language_information.html. * * * Note that 3-digit region codes are not currently supported. * @param {string} [request.sessionToken] * Optional. A string which identifies an Autocomplete session for billing * purposes. Must be a URL and filename safe base64 string with at most 36 * ASCII characters in length. Otherwise an INVALID_ARGUMENT error is * returned. * * The session begins when the user starts typing a query, and concludes when * they select a place and a call to Place Details or Address Validation is * made. Each session can have multiple queries, followed by one Place Details * or Address Validation request. The credentials used for each request within * a session must belong to the same Google Cloud Console project. Once a * session has concluded, the token is no longer valid; your app must generate * a fresh token for each session. If the `session_token` parameter is * omitted, or if you reuse a session token, the session is charged as if no * session token was provided (each request is billed separately). * * We recommend the following guidelines: * * * Use session tokens for all Place Autocomplete calls. * * Generate a fresh token for each session. Using a version 4 UUID is * recommended. * * Ensure that the credentials used for all Place Autocomplete, Place * Details, and Address Validation requests within a session belong to the * same Cloud Console project. * * Be sure to pass a unique session token for each new session. Using the * same token for more than one session will result in each request being * billed individually. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.maps.places.v1.Place|Place}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/places.get_place.js * region_tag:places_v1_generated_Places_GetPlace_async */ getPlace(request?: protos.google.maps.places.v1.IGetPlaceRequest, options?: CallOptions): Promise<[ protos.google.maps.places.v1.IPlace, protos.google.maps.places.v1.IGetPlaceRequest | undefined, {} | undefined ]>; getPlace(request: protos.google.maps.places.v1.IGetPlaceRequest, options: CallOptions, callback: Callback): void; getPlace(request: protos.google.maps.places.v1.IGetPlaceRequest, callback: Callback): void; /** * Returns predictions for the given input. * * @param {Object} request * The request object that will be sent. * @param {string} request.input * Required. The text string on which to search. * @param {google.maps.places.v1.AutocompletePlacesRequest.LocationBias} [request.locationBias] * Optional. Bias results to a specified location. * * At most one of `location_bias` or `location_restriction` should be set. If * neither are set, the results will be biased by IP address, meaning the IP * address will be mapped to an imprecise location and used as a biasing * signal. * @param {google.maps.places.v1.AutocompletePlacesRequest.LocationRestriction} [request.locationRestriction] * Optional. Restrict results to a specified location. * * At most one of `location_bias` or `location_restriction` should be set. If * neither are set, the results will be biased by IP address, meaning the IP * address will be mapped to an imprecise location and used as a biasing * signal. * @param {string[]} [request.includedPrimaryTypes] * Optional. Included primary Place type (for example, "restaurant" or * "gas_station") in Place Types * (https://developers.google.com/maps/documentation/places/web-service/place-types), * or only `(regions)`, or only `(cities)`. A Place is only returned if its * primary type is included in this list. Up to 5 values can be specified. If * no types are specified, all Place types are returned. * @param {string[]} [request.includedRegionCodes] * Optional. Only include results in the specified regions, specified as up to * 15 CLDR two-character region codes. An empty set will not restrict the * results. If both `location_restriction` and `included_region_codes` are * set, the results will be located in the area of intersection. * @param {string} [request.languageCode] * Optional. The language in which to return results. Defaults to en-US. The * results may be in mixed languages if the language used in `input` is * different from `language_code` or if the returned Place does not have a * translation from the local language to `language_code`. * @param {string} [request.regionCode] * Optional. The region code, specified as a CLDR two-character region code. * This affects address formatting, result ranking, and may influence what * results are returned. This does not restrict results to the specified * region. To restrict results to a region, use `region_code_restriction`. * @param {google.type.LatLng} [request.origin] * Optional. The origin point from which to calculate geodesic distance to the * destination (returned as `distance_meters`). If this value is omitted, * geodesic distance will not be returned. * @param {number} [request.inputOffset] * Optional. A zero-based Unicode character offset of `input` indicating the * cursor position in `input`. The cursor position may influence what * predictions are returned. * * If empty, defaults to the length of `input`. * @param {boolean} [request.includeQueryPredictions] * Optional. If true, the response will include both Place and query * predictions. Otherwise the response will only return Place predictions. * @param {string} [request.sessionToken] * Optional. A string which identifies an Autocomplete session for billing * purposes. Must be a URL and filename safe base64 string with at most 36 * ASCII characters in length. Otherwise an INVALID_ARGUMENT error is * returned. * * The session begins when the user starts typing a query, and concludes when * they select a place and a call to Place Details or Address Validation is * made. Each session can have multiple queries, followed by one Place Details * or Address Validation request. The credentials used for each request within * a session must belong to the same Google Cloud Console project. Once a * session has concluded, the token is no longer valid; your app must generate * a fresh token for each session. If the `session_token` parameter is * omitted, or if you reuse a session token, the session is charged as if no * session token was provided (each request is billed separately). * * We recommend the following guidelines: * * * Use session tokens for all Place Autocomplete calls. * * Generate a fresh token for each session. Using a version 4 UUID is * recommended. * * Ensure that the credentials used for all Place Autocomplete, Place * Details, and Address Validation requests within a session belong to the * same Cloud Console project. * * Be sure to pass a unique session token for each new session. Using the * same token for more than one session will result in each request being * billed individually. * @param {boolean} [request.includePureServiceAreaBusinesses] * Optional. Include pure service area businesses if the field is set to true. * Pure service area business is a business that visits or delivers to * customers directly but does not serve customers at their business address. * For example, businesses like cleaning services or plumbers. Those * businesses do not have a physical address or location on Google Maps. * Places will not return fields including `location`, `plus_code`, and other * location related fields for these businesses. * @param {boolean} [request.includeFutureOpeningBusinesses] * Optional. If true, include businesses that are not yet open but will open * in the future. * @param {object} [options] * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details. * @returns {Promise} - The promise which resolves to an array. * The first element of the array is an object representing {@link protos.google.maps.places.v1.AutocompletePlacesResponse|AutocompletePlacesResponse}. * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation } * for more details and examples. * @example include:samples/generated/v1/places.autocomplete_places.js * region_tag:places_v1_generated_Places_AutocompletePlaces_async */ autocompletePlaces(request?: protos.google.maps.places.v1.IAutocompletePlacesRequest, options?: CallOptions): Promise<[ protos.google.maps.places.v1.IAutocompletePlacesResponse, protos.google.maps.places.v1.IAutocompletePlacesRequest | undefined, {} | undefined ]>; autocompletePlaces(request: protos.google.maps.places.v1.IAutocompletePlacesRequest, options: CallOptions, callback: Callback): void; autocompletePlaces(request: protos.google.maps.places.v1.IAutocompletePlacesRequest, callback: Callback): void; /** * Return a fully-qualified photo resource name string. * * @param {string} place * @param {string} photo * @returns {string} Resource name string. */ photoPath(place: string, photo: string): string; /** * Parse the place from Photo resource. * * @param {string} photoName * A fully-qualified path representing Photo resource. * @returns {string} A string representing the place. */ matchPlaceFromPhotoName(photoName: string): string | number; /** * Parse the photo from Photo resource. * * @param {string} photoName * A fully-qualified path representing Photo resource. * @returns {string} A string representing the photo. */ matchPhotoFromPhotoName(photoName: string): string | number; /** * Return a fully-qualified photoMedia resource name string. * * @param {string} place_id * @param {string} photo_reference * @returns {string} Resource name string. */ photoMediaPath(placeId: string, photoReference: string): string; /** * Parse the place_id from PhotoMedia resource. * * @param {string} photoMediaName * A fully-qualified path representing PhotoMedia resource. * @returns {string} A string representing the place_id. */ matchPlaceIdFromPhotoMediaName(photoMediaName: string): string | number; /** * Parse the photo_reference from PhotoMedia resource. * * @param {string} photoMediaName * A fully-qualified path representing PhotoMedia resource. * @returns {string} A string representing the photo_reference. */ matchPhotoReferenceFromPhotoMediaName(photoMediaName: string): string | number; /** * Return a fully-qualified place resource name string. * * @param {string} place_id * @returns {string} Resource name string. */ placePath(placeId: string): string; /** * Parse the place_id from Place resource. * * @param {string} placeName * A fully-qualified path representing Place resource. * @returns {string} A string representing the place_id. */ matchPlaceIdFromPlaceName(placeName: string): string | number; /** * Return a fully-qualified review resource name string. * * @param {string} place * @param {string} review * @returns {string} Resource name string. */ reviewPath(place: string, review: string): string; /** * Parse the place from Review resource. * * @param {string} reviewName * A fully-qualified path representing Review resource. * @returns {string} A string representing the place. */ matchPlaceFromReviewName(reviewName: string): string | number; /** * Parse the review from Review resource. * * @param {string} reviewName * A fully-qualified path representing Review resource. * @returns {string} A string representing the review. */ matchReviewFromReviewName(reviewName: string): string | number; /** * Terminate the gRPC channel and close the client. * * The client will no longer be usable and all future behavior is undefined. * @returns {Promise} A promise that resolves when the client is closed. */ close(): Promise; }