# GMSAutocompleteFilter

    @interface GMSAutocompleteFilter : NSObject

This class represents a set of restrictions that may be applied to autocomplete requests. This
allows customization of autocomplete suggestions to only those places that are of interest.
- `


  ### [type](https://developers.google.com/maps/documentation/places/ios-sdk/reference/objc/Classes/GMSAutocompleteFilter#/c:objc(cs)GMSAutocompleteFilter(py)type)


  ` Deprecated

  `type` property is deprecated in favor of `https://developers.google.com/maps/documentation/places/ios-sdk/reference/objc/Classes/GMSAutocompleteFilter.html#/c:objc(cs)GMSAutocompleteFilter(py)types`.
  DEPRECATED. The type filter applied to an autocomplete request to restrict results to different
  types. Default value is kGMSPlacesAutocompleteTypeFilterNoFilter.

  NOTE: Ignored if the "types" property is set.

  #### Declaration

  Swift

      var type: https://developers.google.com/maps/documentation/places/ios-sdk/reference/objc/Enums/GMSPlacesAutocompleteTypeFilter.html { get set }

  Objective-C

      @property (nonatomic) https://developers.google.com/maps/documentation/places/ios-sdk/reference/objc/Enums/GMSPlacesAutocompleteTypeFilter.html type;

- `


  ### [types](https://developers.google.com/maps/documentation/places/ios-sdk/reference/objc/Classes/GMSAutocompleteFilter#/c:objc(cs)GMSAutocompleteFilter(py)types)


  ` The filter applied to an autocomplete request to restrict results using up to 5 different place
  types.

  NOTE: This API can take an array of up to 5 entries.
  If you are using `https://developers.google.com/maps/documentation/places/ios-sdk/reference/objc/Classes/GMSAutocompleteRequest.html`, this API can take types from [table_A](https://developers.google.com/maps/documentation/places/ios-sdk/place-types).
  Otherwise, take data from [table_1](https://developers.google.com/maps/documentation/places/ios-sdk/supported_types#table1)
  or [table_2](https://developers.google.com/maps/documentation/places/ios-sdk/supported_types#table2),
  but only a single entry in [table_3](https://developers.google.com/maps/documentation/places/ios-sdk/supported_types#table3).
  Default value is null, which means no filters specified. Overrides the deprecated "type" property
  if this is set.

  #### Declaration

  Swift

      var types: [String]? { get set }

  Objective-C

      @property (nonatomic, nullable) NSArray<NSString *> *types;

- `


  ### [country](https://developers.google.com/maps/documentation/places/ios-sdk/reference/objc/Classes/GMSAutocompleteFilter#/c:objc(cs)GMSAutocompleteFilter(py)country)


  ` Deprecated

  `country` property is deprecated in favor of `https://developers.google.com/maps/documentation/places/ios-sdk/reference/objc/Classes/GMSAutocompleteFilter.html#/c:objc(cs)GMSAutocompleteFilter(py)countries`.
  DEPRECATED. The country to restrict results to. This should be a ISO 3166-1 Alpha-2 country code
  (case insensitive). If nil, no country filtering will take place.

  NOTE: Ignored if the "countries" property is set.

  #### Declaration

  Swift

      var country: String? { get set }

  Objective-C

      @property (nonatomic, copy, nullable) NSString *country;

- `


  ### [countries](https://developers.google.com/maps/documentation/places/ios-sdk/reference/objc/Classes/GMSAutocompleteFilter#/c:objc(cs)GMSAutocompleteFilter(py)countries)


  ` The countries to restrict results to. This should be a ISO 3166-1 Alpha-2 country code (case
  insensitive). Supports up to 5 countries to filter. If nil, no country filtering will take place.

  NOTE: Overrides the deprecated "country" property if that is set.

  #### Declaration

  Swift

      var countries: [String]? { get set }

  Objective-C

      @property (nonatomic, copy, nullable) NSArray<NSString *> *countries;

- `


  ### [origin](https://developers.google.com/maps/documentation/places/ios-sdk/reference/objc/Classes/GMSAutocompleteFilter#/c:objc(cs)GMSAutocompleteFilter(py)origin)


  ` The straight line distance origin location for measuring the straight line distance between the
  origin location and autocomplete predictions.

  #### Declaration

  Swift

      var origin: CLLocation? { get set }

  Objective-C

      @property (nonatomic, nullable) CLLocation *origin;

- `


  ### [locationBias](https://developers.google.com/maps/documentation/places/ios-sdk/reference/objc/Classes/GMSAutocompleteFilter#/c:objc(cs)GMSAutocompleteFilter(py)locationBias)


  ` The optional location bias to prefer place results near the location.

  #### Declaration

  Swift

      var locationBias: (any https://developers.google.com/maps/documentation/places/ios-sdk/reference/objc/Protocols/GMSPlaceLocationBias.html)? { get set }

  Objective-C

      @property (nonatomic, nullable) id<https://developers.google.com/maps/documentation/places/ios-sdk/reference/objc/Protocols/GMSPlaceLocationBias.html> locationBias;

- `


  ### [locationRestriction](https://developers.google.com/maps/documentation/places/ios-sdk/reference/objc/Classes/GMSAutocompleteFilter#/c:objc(cs)GMSAutocompleteFilter(py)locationRestriction)


  ` The optional location restriction to limit place results.

  #### Declaration

  Swift

      var locationRestriction: (any https://developers.google.com/maps/documentation/places/ios-sdk/reference/objc/Protocols/GMSPlaceLocationRestriction.html)? { get set }

  Objective-C

      @property (nonatomic, nullable) id<https://developers.google.com/maps/documentation/places/ios-sdk/reference/objc/Protocols/GMSPlaceLocationRestriction.html> locationRestriction;

- `


  ### [regionCode](https://developers.google.com/maps/documentation/places/ios-sdk/reference/objc/Classes/GMSAutocompleteFilter#/c:objc(cs)GMSAutocompleteFilter(py)regionCode)


  ` regionCode affects address formatting, result ranking, and potentially hiding or showing certain
  results.

  #### Declaration

  Swift

      var regionCode: String? { get set }

  Objective-C

      @property (nonatomic, nullable) NSString *regionCode;

- `


  ### [inputOffset](https://developers.google.com/maps/documentation/places/ios-sdk/reference/objc/Classes/GMSAutocompleteFilter#/c:objc(cs)GMSAutocompleteFilter(py)inputOffset)


  ` inputOffset is the character offset of the input that indicates where the
  - completions may start from.

  #### Declaration

  Swift

      var inputOffset: Int32 { get set }

  Objective-C

      @property (nonatomic) int32_t inputOffset;

- `


  ### [shouldIncludePureServiceAreaBusinesses](https://developers.google.com/maps/documentation/places/ios-sdk/reference/objc/Classes/GMSAutocompleteFilter#/c:objc(cs)GMSAutocompleteFilter(py)shouldIncludePureServiceAreaBusinesses)


  ` Whether pure service area businesses should be included in the results.

  A 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`, `plusCode`, and other location related
  fields for these businesses.

  Default value is false.

  #### Declaration

  Swift

      var shouldIncludePureServiceAreaBusinesses: Bool { get set }

  Objective-C

      @property (nonatomic) BOOL shouldIncludePureServiceAreaBusinesses;