@docsearch/js 4.0.1 → 4.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -343,7 +343,7 @@ type ApiKey = {
343
343
  };
344
344
 
345
345
  /**
346
- * Type of indexing operation.
346
+ * Which indexing operation to perform: - `addObject`: adds records to an index. Equivalent to the \"Add a new record (with auto-generated object ID)\" operation. - `updateObject`: adds or replaces records in an index. Equivalent to the \"Add or replace a record\" operation. - `partialUpdateObject`: adds or updates attributes within records. Equivalent to the \"Add or update attributes\" operation with the `createIfNoExists` parameter set to true. (If a record with the specified `objectID` doesn\'t exist in the specified index, this action creates adds the record to the index) - `partialUpdateObjectNoCreate`: same as `partialUpdateObject`, but with `createIfNoExists` set to false. (A record isn\'t added to the index if its `objectID` doesn\'t exist) - `deleteObject`: delete records from an index. Equivalent to the \"Delete a record\" operation. - `delete`. Delete an index. Equivalent to the \"Delete an index\" operation. - `clear`: delete all records from an index. Equivalent to the \"Delete all records from an index operation\".
347
347
  */
348
348
  type Action = 'addObject' | 'updateObject' | 'partialUpdateObject' | 'partialUpdateObjectNoCreate' | 'deleteObject' | 'delete' | 'clear';
349
349
 
@@ -1359,7 +1359,7 @@ type TagFilters$1 = Array<TagFilters$1> | string;
1359
1359
 
1360
1360
  type BaseSearchParamsWithoutQuery$1 = {
1361
1361
  /**
1362
- * Keywords to be used instead of the search query to conduct a more broader search. Using the `similarQuery` parameter changes other settings: - `queryType` is set to `prefixNone`. - `removeStopWords` is set to true. - `words` is set as the first ranking criterion. - All remaining words are treated as `optionalWords`. Since the `similarQuery` is supposed to do a broad search, they usually return many results. Combine it with `filters` to narrow down the list of results.
1362
+ * Keywords to be used instead of the search query to conduct a more broader search Using the `similarQuery` parameter changes other settings - `queryType` is set to `prefixNone`. - `removeStopWords` is set to true. - `words` is set as the first ranking criterion. - All remaining words are treated as `optionalWords` Since the `similarQuery` is supposed to do a broad search, they usually return many results. Combine it with `filters` to narrow down the list of results.
1363
1363
  */
1364
1364
  similarQuery?: string | undefined;
1365
1365
  /**
@@ -1371,7 +1371,7 @@ type BaseSearchParamsWithoutQuery$1 = {
1371
1371
  numericFilters?: NumericFilters$1 | undefined;
1372
1372
  tagFilters?: TagFilters$1 | undefined;
1373
1373
  /**
1374
- * Whether to sum all filter scores. If true, all filter scores are summed. Otherwise, the maximum filter score is kept. For more information, see [filter scores](https://www.algolia.com/doc/guides/managing-results/refine-results/filtering/in-depth/filter-scoring/#accumulating-scores-with-sumorfiltersscores).
1374
+ * Whether to sum all filter scores If true, all filter scores are summed. Otherwise, the maximum filter score is kept. For more information, see [filter scores](https://www.algolia.com/doc/guides/managing-results/refine-results/filtering/in-depth/filter-scoring/#accumulating-scores-with-sumorfiltersscores).
1375
1375
  */
1376
1376
  sumOrFiltersScores?: boolean | undefined;
1377
1377
  /**
@@ -1379,11 +1379,11 @@ type BaseSearchParamsWithoutQuery$1 = {
1379
1379
  */
1380
1380
  restrictSearchableAttributes?: Array<string> | undefined;
1381
1381
  /**
1382
- * Facets for which to retrieve facet values that match the search criteria and the number of matching facet values. To retrieve all facets, use the wildcard character `*`. For more information, see [facets](https://www.algolia.com/doc/guides/managing-results/refine-results/faceting/#contextual-facet-values-and-counts).
1382
+ * Facets for which to retrieve facet values that match the search criteria and the number of matching facet values To retrieve all facets, use the wildcard character `*`. For more information, see [facets](https://www.algolia.com/doc/guides/managing-results/refine-results/faceting/#contextual-facet-values-and-counts).
1383
1383
  */
1384
1384
  facets?: Array<string> | undefined;
1385
1385
  /**
1386
- * Whether faceting should be applied after deduplication with `distinct`. This leads to accurate facet counts when using faceting in combination with `distinct`. It\'s usually better to use `afterDistinct` modifiers in the `attributesForFaceting` setting, as `facetingAfterDistinct` only computes correct facet counts if all records have the same facet values for the `attributeForDistinct`.
1386
+ * Whether faceting should be applied after deduplication with `distinct` This leads to accurate facet counts when using faceting in combination with `distinct`. It\'s usually better to use `afterDistinct` modifiers in the `attributesForFaceting` setting, as `facetingAfterDistinct` only computes correct facet counts if all records have the same facet values for the `attributeForDistinct`.
1387
1387
  */
1388
1388
  facetingAfterDistinct?: boolean | undefined;
1389
1389
  /**
@@ -1418,15 +1418,15 @@ type BaseSearchParamsWithoutQuery$1 = {
1418
1418
  */
1419
1419
  insidePolygon?: Array<Array<number>> | undefined;
1420
1420
  /**
1421
- * ISO language codes that adjust settings that are useful for processing natural language queries (as opposed to keyword searches): - Sets `removeStopWords` and `ignorePlurals` to the list of provided languages. - Sets `removeWordsIfNoResults` to `allOptional`. - Adds a `natural_language` attribute to `ruleContexts` and `analyticsTags`.
1421
+ * ISO language codes that adjust settings that are useful for processing natural language queries (as opposed to keyword searches) - Sets `removeStopWords` and `ignorePlurals` to the list of provided languages. - Sets `removeWordsIfNoResults` to `allOptional`. - Adds a `natural_language` attribute to `ruleContexts` and `analyticsTags`.
1422
1422
  */
1423
1423
  naturalLanguages?: Array<SupportedLanguage$1> | undefined;
1424
1424
  /**
1425
- * Assigns a rule context to the search query. [Rule contexts](https://www.algolia.com/doc/guides/managing-results/rules/rules-overview/how-to/customize-search-results-by-platform/#whats-a-context) are strings that you can use to trigger matching rules.
1425
+ * Assigns a rule context to the search query [Rule contexts](https://www.algolia.com/doc/guides/managing-results/rules/rules-overview/how-to/customize-search-results-by-platform/#whats-a-context) are strings that you can use to trigger matching rules.
1426
1426
  */
1427
1427
  ruleContexts?: Array<string> | undefined;
1428
1428
  /**
1429
- * Impact that Personalization should have on this search. The higher this value is, the more Personalization determines the ranking compared to other factors. For more information, see [Understanding Personalization impact](https://www.algolia.com/doc/guides/personalization/personalizing-results/in-depth/configuring-personalization/#understanding-personalization-impact).
1429
+ * Impact that Personalization should have on this search The higher this value is, the more Personalization determines the ranking compared to other factors. For more information, see [Understanding Personalization impact](https://www.algolia.com/doc/guides/personalization/personalizing-results/in-depth/configuring-personalization/#understanding-personalization-impact).
1430
1430
  */
1431
1431
  personalizationImpact?: number | undefined;
1432
1432
  /**
@@ -1442,7 +1442,7 @@ type BaseSearchParamsWithoutQuery$1 = {
1442
1442
  */
1443
1443
  synonyms?: boolean | undefined;
1444
1444
  /**
1445
- * Whether to include a `queryID` attribute in the response. The query ID is a unique identifier for a search query and is required for tracking [click and conversion events](https://www.algolia.com/guides/sending-events/getting-started/).
1445
+ * Whether to include a `queryID` attribute in the response The query ID is a unique identifier for a search query and is required for tracking [click and conversion events](https://www.algolia.com/guides/sending-events/getting-started/).
1446
1446
  */
1447
1447
  clickAnalytics?: boolean | undefined;
1448
1448
  /**
@@ -1536,7 +1536,7 @@ type TypoTolerance$1 = boolean | TypoToleranceEnum$1;
1536
1536
 
1537
1537
  type IndexSettingsAsSearchParams$1 = {
1538
1538
  /**
1539
- * Attributes to include in the API response. To reduce the size of your response, you can retrieve only some of the attributes. Attribute names are case-sensitive. - `*` retrieves all attributes, except attributes included in the `customRanking` and `unretrievableAttributes` settings. - To retrieve all attributes except a specific one, prefix the attribute with a dash and combine it with the `*`: `[\"*\", \"-ATTRIBUTE\"]`. - The `objectID` attribute is always included.
1539
+ * Attributes to include in the API response To reduce the size of your response, you can retrieve only some of the attributes. Attribute names are case-sensitive - `*` retrieves all attributes, except attributes included in the `customRanking` and `unretrievableAttributes` settings. - To retrieve all attributes except a specific one, prefix the attribute with a dash and combine it with the `*`: `[\"*\", \"-ATTRIBUTE\"]`. - The `objectID` attribute is always included.
1540
1540
  */
1541
1541
  attributesToRetrieve?: Array<string> | undefined;
1542
1542
  /**
@@ -1544,15 +1544,15 @@ type IndexSettingsAsSearchParams$1 = {
1544
1544
  */
1545
1545
  ranking?: Array<string> | undefined;
1546
1546
  /**
1547
- * Relevancy threshold below which less relevant results aren\'t included in the results. You can only set `relevancyStrictness` on [virtual replica indices](https://www.algolia.com/doc/guides/managing-results/refine-results/sorting/in-depth/replicas/#what-are-virtual-replicas). Use this setting to strike a balance between the relevance and number of returned results.
1547
+ * Relevancy threshold below which less relevant results aren\'t included in the results You can only set `relevancyStrictness` on [virtual replica indices](https://www.algolia.com/doc/guides/managing-results/refine-results/sorting/in-depth/replicas/#what-are-virtual-replicas). Use this setting to strike a balance between the relevance and number of returned results.
1548
1548
  */
1549
1549
  relevancyStrictness?: number | undefined;
1550
1550
  /**
1551
- * Attributes to highlight. By default, all searchable attributes are highlighted. Use `*` to highlight all attributes or use an empty array `[]` to turn off highlighting. Attribute names are case-sensitive. With highlighting, strings that match the search query are surrounded by HTML tags defined by `highlightPreTag` and `highlightPostTag`. You can use this to visually highlight matching parts of a search query in your UI. For more information, see [Highlighting and snippeting](https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/highlighting-snippeting/js/).
1551
+ * Attributes to highlight By default, all searchable attributes are highlighted. Use `*` to highlight all attributes or use an empty array `[]` to turn off highlighting. Attribute names are case-sensitive With highlighting, strings that match the search query are surrounded by HTML tags defined by `highlightPreTag` and `highlightPostTag`. You can use this to visually highlight matching parts of a search query in your UI For more information, see [Highlighting and snippeting](https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/highlighting-snippeting/js/).
1552
1552
  */
1553
1553
  attributesToHighlight?: Array<string> | undefined;
1554
1554
  /**
1555
- * Attributes for which to enable snippets. Attribute names are case-sensitive. Snippets provide additional context to matched words. If you enable snippets, they include 10 words, including the matched word. The matched word will also be wrapped by HTML tags for highlighting. You can adjust the number of words with the following notation: `ATTRIBUTE:NUMBER`, where `NUMBER` is the number of words to be extracted.
1555
+ * Attributes for which to enable snippets. Attribute names are case-sensitive Snippets provide additional context to matched words. If you enable snippets, they include 10 words, including the matched word. The matched word will also be wrapped by HTML tags for highlighting. You can adjust the number of words with the following notation: `ATTRIBUTE:NUMBER`, where `NUMBER` is the number of words to be extracted.
1556
1556
  */
1557
1557
  attributesToSnippet?: Array<string> | undefined;
1558
1558
  /**
@@ -1585,21 +1585,21 @@ type IndexSettingsAsSearchParams$1 = {
1585
1585
  minWordSizefor2Typos?: number | undefined;
1586
1586
  typoTolerance?: TypoTolerance$1 | undefined;
1587
1587
  /**
1588
- * Whether to allow typos on numbers in the search query. Turn off this setting to reduce the number of irrelevant matches when searching in large sets of similar numbers.
1588
+ * Whether to allow typos on numbers in the search query Turn off this setting to reduce the number of irrelevant matches when searching in large sets of similar numbers.
1589
1589
  */
1590
1590
  allowTyposOnNumericTokens?: boolean | undefined;
1591
1591
  /**
1592
- * Attributes for which you want to turn off [typo tolerance](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/). Attribute names are case-sensitive. Returning only exact matches can help when: - [Searching in hyphenated attributes](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/how-to/how-to-search-in-hyphenated-attributes/). - Reducing the number of matches when you have too many. This can happen with attributes that are long blocks of text, such as product descriptions. Consider alternatives such as `disableTypoToleranceOnWords` or adding synonyms if your attributes have intentional unusual spellings that might look like typos.
1592
+ * Attributes for which you want to turn off [typo tolerance](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/). Attribute names are case-sensitive Returning only exact matches can help when - [Searching in hyphenated attributes](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/how-to/how-to-search-in-hyphenated-attributes/). - Reducing the number of matches when you have too many. This can happen with attributes that are long blocks of text, such as product descriptions Consider alternatives such as `disableTypoToleranceOnWords` or adding synonyms if your attributes have intentional unusual spellings that might look like typos.
1593
1593
  */
1594
1594
  disableTypoToleranceOnAttributes?: Array<string> | undefined;
1595
1595
  ignorePlurals?: IgnorePlurals$1 | undefined;
1596
1596
  removeStopWords?: RemoveStopWords$1 | undefined;
1597
1597
  /**
1598
- * Languages for language-specific query processing steps such as plurals, stop-word removal, and word-detection dictionaries. This setting sets a default list of languages used by the `removeStopWords` and `ignorePlurals` settings. This setting also sets a dictionary for word detection in the logogram-based [CJK](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/normalization/#normalization-for-logogram-based-languages-cjk) languages. To support this, you must place the CJK language **first**. **You should always specify a query language.** If you don\'t specify an indexing language, the search engine uses all [supported languages](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/supported-languages/), or the languages you specified with the `ignorePlurals` or `removeStopWords` parameters. This can lead to unexpected search results. For more information, see [Language-specific configuration](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/).
1598
+ * Languages for language-specific query processing steps such as plurals, stop-word removal, and word-detection dictionaries This setting sets a default list of languages used by the `removeStopWords` and `ignorePlurals` settings. This setting also sets a dictionary for word detection in the logogram-based [CJK](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/normalization/#normalization-for-logogram-based-languages-cjk) languages. To support this, you must place the CJK language **first** **You should always specify a query language.** If you don\'t specify an indexing language, the search engine uses all [supported languages](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/supported-languages/), or the languages you specified with the `ignorePlurals` or `removeStopWords` parameters. This can lead to unexpected search results. For more information, see [Language-specific configuration](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/).
1599
1599
  */
1600
1600
  queryLanguages?: Array<SupportedLanguage$1> | undefined;
1601
1601
  /**
1602
- * Whether to split compound words in the query into their building blocks. For more information, see [Word segmentation](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/#splitting-compound-words). Word segmentation is supported for these languages: German, Dutch, Finnish, Swedish, and Norwegian. Decompounding doesn\'t work for words with [non-spacing mark Unicode characters](https://www.charactercodes.net/category/non-spacing_mark). For example, `Gartenstühle` won\'t be decompounded if the `ü` consists of `u` (U+0075) and `◌̈` (U+0308).
1602
+ * Whether to split compound words in the query into their building blocks For more information, see [Word segmentation](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/#splitting-compound-words). Word segmentation is supported for these languages: German, Dutch, Finnish, Swedish, and Norwegian. Decompounding doesn\'t work for words with [non-spacing mark Unicode characters](https://www.charactercodes.net/category/non-spacing_mark). For example, `Gartenstühle` won\'t be decompounded if the `ü` consists of `u` (U+0075) and `◌̈` (U+0308).
1603
1603
  */
1604
1604
  decompoundQuery?: boolean | undefined;
1605
1605
  /**
@@ -1615,34 +1615,34 @@ type IndexSettingsAsSearchParams$1 = {
1615
1615
  mode?: Mode$1 | undefined;
1616
1616
  semanticSearch?: SemanticSearch$1 | undefined;
1617
1617
  /**
1618
- * Whether to support phrase matching and excluding words from search queries. Use the `advancedSyntaxFeatures` parameter to control which feature is supported.
1618
+ * Whether to support phrase matching and excluding words from search queries Use the `advancedSyntaxFeatures` parameter to control which feature is supported.
1619
1619
  */
1620
1620
  advancedSyntax?: boolean | undefined;
1621
1621
  optionalWords?: OptionalWords$1 | null | undefined;
1622
1622
  /**
1623
- * Searchable attributes for which you want to [turn off the Exact ranking criterion](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/override-search-engine-defaults/in-depth/adjust-exact-settings/#turn-off-exact-for-some-attributes). Attribute names are case-sensitive. This can be useful for attributes with long values, where the likelihood of an exact match is high, such as product descriptions. Turning off the Exact ranking criterion for these attributes favors exact matching on other attributes. This reduces the impact of individual attributes with a lot of content on ranking.
1623
+ * Searchable attributes for which you want to [turn off the Exact ranking criterion](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/override-search-engine-defaults/in-depth/adjust-exact-settings/#turn-off-exact-for-some-attributes). Attribute names are case-sensitive This can be useful for attributes with long values, where the likelihood of an exact match is high, such as product descriptions. Turning off the Exact ranking criterion for these attributes favors exact matching on other attributes. This reduces the impact of individual attributes with a lot of content on ranking.
1624
1624
  */
1625
1625
  disableExactOnAttributes?: Array<string> | undefined;
1626
1626
  exactOnSingleWordQuery?: ExactOnSingleWordQuery$1 | undefined;
1627
1627
  /**
1628
- * Determine which plurals and synonyms should be considered an exact matches. By default, Algolia treats singular and plural forms of a word, and single-word synonyms, as [exact](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/#exact) matches when searching. For example: - \"swimsuit\" and \"swimsuits\" are treated the same - \"swimsuit\" and \"swimwear\" are treated the same (if they are [synonyms](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/adding-synonyms/#regular-synonyms)). - `ignorePlurals`. Plurals and similar declensions added by the `ignorePlurals` setting are considered exact matches. - `singleWordSynonym`. Single-word synonyms, such as \"NY\" = \"NYC\", are considered exact matches. - `multiWordsSynonym`. Multi-word synonyms, such as \"NY\" = \"New York\", are considered exact matches.
1628
+ * Determine which plurals and synonyms should be considered an exact matches By default, Algolia treats singular and plural forms of a word, and single-word synonyms, as [exact](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/#exact) matches when searching. For example - \"swimsuit\" and \"swimsuits\" are treated the same - \"swimsuit\" and \"swimwear\" are treated the same (if they are [synonyms](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/adding-synonyms/#regular-synonyms)) - `ignorePlurals`. Plurals and similar declensions added by the `ignorePlurals` setting are considered exact matches - `singleWordSynonym`. Single-word synonyms, such as \"NY\" = \"NYC\", are considered exact matches - `multiWordsSynonym`. Multi-word synonyms, such as \"NY\" = \"New York\", are considered exact matches.
1629
1629
  */
1630
1630
  alternativesAsExact?: Array<AlternativesAsExact$1> | undefined;
1631
1631
  /**
1632
- * Advanced search syntax features you want to support. - `exactPhrase`. Phrases in quotes must match exactly. For example, `sparkly blue \"iPhone case\"` only returns records with the exact string \"iPhone case\". - `excludeWords`. Query words prefixed with a `-` must not occur in a record. For example, `search -engine` matches records that contain \"search\" but not \"engine\". This setting only has an effect if `advancedSyntax` is true.
1632
+ * Advanced search syntax features you want to support - `exactPhrase`. Phrases in quotes must match exactly. For example, `sparkly blue \"iPhone case\"` only returns records with the exact string \"iPhone case\" - `excludeWords`. Query words prefixed with a `-` must not occur in a record. For example, `search -engine` matches records that contain \"search\" but not \"engine\" This setting only has an effect if `advancedSyntax` is true.
1633
1633
  */
1634
1634
  advancedSyntaxFeatures?: Array<AdvancedSyntaxFeatures$1> | undefined;
1635
1635
  distinct?: Distinct$1 | undefined;
1636
1636
  /**
1637
- * Whether to replace a highlighted word with the matched synonym. By default, the original words are highlighted even if a synonym matches. For example, with `home` as a synonym for `house` and a search for `home`, records matching either \"home\" or \"house\" are included in the search results, and either \"home\" or \"house\" are highlighted. With `replaceSynonymsInHighlight` set to `true`, a search for `home` still matches the same records, but all occurrences of \"house\" are replaced by \"home\" in the highlighted response.
1637
+ * Whether to replace a highlighted word with the matched synonym By default, the original words are highlighted even if a synonym matches. For example, with `home` as a synonym for `house` and a search for `home`, records matching either \"home\" or \"house\" are included in the search results, and either \"home\" or \"house\" are highlighted With `replaceSynonymsInHighlight` set to `true`, a search for `home` still matches the same records, but all occurrences of \"house\" are replaced by \"home\" in the highlighted response.
1638
1638
  */
1639
1639
  replaceSynonymsInHighlight?: boolean | undefined;
1640
1640
  /**
1641
- * Minimum proximity score for two matching words. This adjusts the [Proximity ranking criterion](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/#proximity) by equally scoring matches that are farther apart. For example, if `minProximity` is 2, neighboring matches and matches with one word between them would have the same score.
1641
+ * Minimum proximity score for two matching words This adjusts the [Proximity ranking criterion](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/#proximity) by equally scoring matches that are farther apart For example, if `minProximity` is 2, neighboring matches and matches with one word between them would have the same score.
1642
1642
  */
1643
1643
  minProximity?: number | undefined;
1644
1644
  /**
1645
- * Properties to include in the API response of search and browse requests. By default, all response properties are included. To reduce the response size, you can select which properties should be included. An empty list may lead to an empty API response (except properties you can\'t exclude). You can\'t exclude these properties: `message`, `warning`, `cursor`, `abTestVariantID`, or any property added by setting `getRankingInfo` to true. Your search depends on the `hits` field. If you omit this field, searches won\'t return any results. Your UI might also depend on other properties, for example, for pagination. Before restricting the response size, check the impact on your search experience.
1645
+ * Properties to include in the API response of search and browse requests By default, all response properties are included. To reduce the response size, you can select which properties should be included An empty list may lead to an empty API response (except properties you can\'t exclude) You can\'t exclude these properties: `message`, `warning`, `cursor`, `abTestVariantID`, or any property added by setting `getRankingInfo` to true Your search depends on the `hits` field. If you omit this field, searches won\'t return any results. Your UI might also depend on other properties, for example, for pagination. Before restricting the response size, check the impact on your search experience.
1646
1646
  */
1647
1647
  responseFields?: Array<string> | undefined;
1648
1648
  /**
@@ -1650,16 +1650,16 @@ type IndexSettingsAsSearchParams$1 = {
1650
1650
  */
1651
1651
  maxValuesPerFacet?: number | undefined;
1652
1652
  /**
1653
- * Order in which to retrieve facet values. - `count`. Facet values are retrieved by decreasing count. The count is the number of matching records containing this facet value. - `alpha`. Retrieve facet values alphabetically. This setting doesn\'t influence how facet values are displayed in your UI (see `renderingContent`). For more information, see [facet value display](https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/facet-display/js/).
1653
+ * Order in which to retrieve facet values - `count`. Facet values are retrieved by decreasing count. The count is the number of matching records containing this facet value - `alpha`. Retrieve facet values alphabetically This setting doesn\'t influence how facet values are displayed in your UI (see `renderingContent`). For more information, see [facet value display](https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/facet-display/js/).
1654
1654
  */
1655
1655
  sortFacetValuesBy?: string | undefined;
1656
1656
  /**
1657
- * Whether the best matching attribute should be determined by minimum proximity. This setting only affects ranking if the Attribute ranking criterion comes before Proximity in the `ranking` setting. If true, the best matching attribute is selected based on the minimum proximity of multiple matches. Otherwise, the best matching attribute is determined by the order in the `searchableAttributes` setting.
1657
+ * Whether the best matching attribute should be determined by minimum proximity This setting only affects ranking if the Attribute ranking criterion comes before Proximity in the `ranking` setting. If true, the best matching attribute is selected based on the minimum proximity of multiple matches. Otherwise, the best matching attribute is determined by the order in the `searchableAttributes` setting.
1658
1658
  */
1659
1659
  attributeCriteriaComputedByMinProximity?: boolean | undefined;
1660
1660
  renderingContent?: RenderingContent$1 | undefined;
1661
1661
  /**
1662
- * Whether this search will use [Dynamic Re-Ranking](https://www.algolia.com/doc/guides/algolia-ai/re-ranking/). This setting only has an effect if you activated Dynamic Re-Ranking for this index in the Algolia dashboard.
1662
+ * Whether this search will use [Dynamic Re-Ranking](https://www.algolia.com/doc/guides/algolia-ai/re-ranking/) This setting only has an effect if you activated Dynamic Re-Ranking for this index in the Algolia dashboard.
1663
1663
  */
1664
1664
  enableReRanking?: boolean | undefined;
1665
1665
  reRankingApplyFilter?: ReRankingApplyFilter$1 | null | undefined;
@@ -1773,7 +1773,7 @@ type Consequence = {
1773
1773
  */
1774
1774
  promote?: Array<Promote> | undefined;
1775
1775
  /**
1776
- * Whether promoted records must match an active filter for the consequence to be applied. This ensures that user actions (filtering the search) are given a higher precendence. For example, if you promote a record with the `color: red` attribute, and the user filters the search for `color: blue`, the \"red\" record won\'t be shown.
1776
+ * Determines whether promoted records must also match active filters for the consequence to apply. This ensures user-applied filters take priority and irrelevant matches aren\'t shown. For example, if you promote a record with `color: red` but the user filters for `color: blue`, the \"red\" record won\'t be shown. > In the Algolia dashboard, when you use the **Pin an item** consequence, `filterPromotes` appears as the checkbox: **Pinned items must match active filters to be displayed.** For examples, see [Promote results with rules](https://www.algolia.com/doc/guides/managing-results/rules/merchandising-and-promoting/how-to/promote-hits/#promote-results-matching-active-filters).
1777
1777
  */
1778
1778
  filterPromotes?: boolean | undefined;
1779
1779
  /**
@@ -1790,11 +1790,11 @@ type TimeRange = {
1790
1790
  /**
1791
1791
  * When the rule should start to be active, in Unix epoch time.
1792
1792
  */
1793
- from: number;
1793
+ from?: number | undefined;
1794
1794
  /**
1795
1795
  * When the rule should stop to be active, in Unix epoch time.
1796
1796
  */
1797
- until: number;
1797
+ until?: number | undefined;
1798
1798
  };
1799
1799
 
1800
1800
  /**
@@ -2660,7 +2660,7 @@ type ClearSynonymsProps = {
2660
2660
  */
2661
2661
  type CustomDeleteProps = {
2662
2662
  /**
2663
- * Path of the endpoint, anything after \"/1\" must be specified.
2663
+ * Path of the endpoint, for example `1/newFeature`.
2664
2664
  */
2665
2665
  path: string;
2666
2666
  /**
@@ -2675,7 +2675,7 @@ type CustomDeleteProps = {
2675
2675
  */
2676
2676
  type CustomGetProps = {
2677
2677
  /**
2678
- * Path of the endpoint, anything after \"/1\" must be specified.
2678
+ * Path of the endpoint, for example `1/newFeature`.
2679
2679
  */
2680
2680
  path: string;
2681
2681
  /**
@@ -2690,7 +2690,7 @@ type CustomGetProps = {
2690
2690
  */
2691
2691
  type CustomPostProps$1 = {
2692
2692
  /**
2693
- * Path of the endpoint, anything after \"/1\" must be specified.
2693
+ * Path of the endpoint, for example `1/newFeature`.
2694
2694
  */
2695
2695
  path: string;
2696
2696
  /**
@@ -2709,7 +2709,7 @@ type CustomPostProps$1 = {
2709
2709
  */
2710
2710
  type CustomPutProps = {
2711
2711
  /**
2712
- * Path of the endpoint, anything after \"/1\" must be specified.
2712
+ * Path of the endpoint, for example `1/newFeature`.
2713
2713
  */
2714
2714
  path: string;
2715
2715
  /**
@@ -2884,6 +2884,10 @@ type GetSettingsProps = {
2884
2884
  * Name of the index on which to perform the operation.
2885
2885
  */
2886
2886
  indexName: string;
2887
+ /**
2888
+ * When set to 2, the endpoint will not include `synonyms` in the response. This parameter is here for backward compatibility.
2889
+ */
2890
+ getVersion?: number | undefined;
2887
2891
  };
2888
2892
  /**
2889
2893
  * Properties for the `getSynonym` method.
@@ -3332,6 +3336,10 @@ type AccountCopyIndexOptions = {
3332
3336
  * The name of the index to write the copy in.
3333
3337
  */
3334
3338
  destinationIndexName: string;
3339
+ /**
3340
+ * The size of the chunk of `objects`. Defaults to 1000.
3341
+ */
3342
+ batchSize?: number | undefined;
3335
3343
  };
3336
3344
  declare function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption, authMode, algoliaAgents, ...options }: CreateClientOptions): {
3337
3345
  transporter: Transporter;
@@ -3491,7 +3499,7 @@ declare function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption,
3491
3499
  partialUpdateObjects({ indexName, objects, createIfNotExists, waitForTasks, batchSize }: PartialUpdateObjectsOptions, requestOptions?: RequestOptions | undefined): Promise<BatchResponse[]>;
3492
3500
  /**
3493
3501
  * Helper: Replaces all objects (records) in the given `index_name` with the given `objects`. A temporary index is created during this process in order to backup your data.
3494
- * See https://api-clients-automation.netlify.app/docs/add-new-api-client#5-helpers for implementation details.
3502
+ * See https://api-clients-automation.netlify.app/docs/custom-helpers/#replaceallobjects for implementation details.
3495
3503
  *
3496
3504
  * @summary Helper: Replaces all objects (records) in the given `index_name` with the given `objects`. A temporary index is created during this process in order to backup your data.
3497
3505
  * @param replaceAllObjects - The `replaceAllObjects` object.
@@ -3646,7 +3654,7 @@ declare function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption,
3646
3654
  /**
3647
3655
  * This method lets you send requests to the Algolia REST API.
3648
3656
  * @param customDelete - The customDelete object.
3649
- * @param customDelete.path - Path of the endpoint, anything after \"/1\" must be specified.
3657
+ * @param customDelete.path - Path of the endpoint, for example `1/newFeature`.
3650
3658
  * @param customDelete.parameters - Query parameters to apply to the current query.
3651
3659
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3652
3660
  */
@@ -3654,7 +3662,7 @@ declare function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption,
3654
3662
  /**
3655
3663
  * This method lets you send requests to the Algolia REST API.
3656
3664
  * @param customGet - The customGet object.
3657
- * @param customGet.path - Path of the endpoint, anything after \"/1\" must be specified.
3665
+ * @param customGet.path - Path of the endpoint, for example `1/newFeature`.
3658
3666
  * @param customGet.parameters - Query parameters to apply to the current query.
3659
3667
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3660
3668
  */
@@ -3662,7 +3670,7 @@ declare function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption,
3662
3670
  /**
3663
3671
  * This method lets you send requests to the Algolia REST API.
3664
3672
  * @param customPost - The customPost object.
3665
- * @param customPost.path - Path of the endpoint, anything after \"/1\" must be specified.
3673
+ * @param customPost.path - Path of the endpoint, for example `1/newFeature`.
3666
3674
  * @param customPost.parameters - Query parameters to apply to the current query.
3667
3675
  * @param customPost.body - Parameters to send with the custom request.
3668
3676
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
@@ -3671,7 +3679,7 @@ declare function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption,
3671
3679
  /**
3672
3680
  * This method lets you send requests to the Algolia REST API.
3673
3681
  * @param customPut - The customPut object.
3674
- * @param customPut.path - Path of the endpoint, anything after \"/1\" must be specified.
3682
+ * @param customPut.path - Path of the endpoint, for example `1/newFeature`.
3675
3683
  * @param customPut.parameters - Query parameters to apply to the current query.
3676
3684
  * @param customPut.body - Parameters to send with the custom request.
3677
3685
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
@@ -3840,9 +3848,10 @@ declare function createSearchClient({ appId: appIdOption, apiKey: apiKeyOption,
3840
3848
  * - settings
3841
3849
  * @param getSettings - The getSettings object.
3842
3850
  * @param getSettings.indexName - Name of the index on which to perform the operation.
3851
+ * @param getSettings.getVersion - When set to 2, the endpoint will not include `synonyms` in the response. This parameter is here for backward compatibility.
3843
3852
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
3844
3853
  */
3845
- getSettings({ indexName }: GetSettingsProps, requestOptions?: RequestOptions): Promise<SettingsResponse>;
3854
+ getSettings({ indexName, getVersion }: GetSettingsProps, requestOptions?: RequestOptions): Promise<SettingsResponse>;
3846
3855
  /**
3847
3856
  * Retrieves all allowed IP addresses with access to your application.
3848
3857
  *
@@ -4248,7 +4257,7 @@ type TagFilters = Array<TagFilters> | string;
4248
4257
 
4249
4258
  type BaseRecommendSearchParams = {
4250
4259
  /**
4251
- * Keywords to be used instead of the search query to conduct a more broader search. Using the `similarQuery` parameter changes other settings: - `queryType` is set to `prefixNone`. - `removeStopWords` is set to true. - `words` is set as the first ranking criterion. - All remaining words are treated as `optionalWords`. Since the `similarQuery` is supposed to do a broad search, they usually return many results. Combine it with `filters` to narrow down the list of results.
4260
+ * Keywords to be used instead of the search query to conduct a more broader search Using the `similarQuery` parameter changes other settings - `queryType` is set to `prefixNone`. - `removeStopWords` is set to true. - `words` is set as the first ranking criterion. - All remaining words are treated as `optionalWords` Since the `similarQuery` is supposed to do a broad search, they usually return many results. Combine it with `filters` to narrow down the list of results.
4252
4261
  */
4253
4262
  similarQuery?: string | undefined;
4254
4263
  /**
@@ -4260,7 +4269,7 @@ type BaseRecommendSearchParams = {
4260
4269
  numericFilters?: NumericFilters | undefined;
4261
4270
  tagFilters?: TagFilters | undefined;
4262
4271
  /**
4263
- * Whether to sum all filter scores. If true, all filter scores are summed. Otherwise, the maximum filter score is kept. For more information, see [filter scores](https://www.algolia.com/doc/guides/managing-results/refine-results/filtering/in-depth/filter-scoring/#accumulating-scores-with-sumorfiltersscores).
4272
+ * Whether to sum all filter scores If true, all filter scores are summed. Otherwise, the maximum filter score is kept. For more information, see [filter scores](https://www.algolia.com/doc/guides/managing-results/refine-results/filtering/in-depth/filter-scoring/#accumulating-scores-with-sumorfiltersscores).
4264
4273
  */
4265
4274
  sumOrFiltersScores?: boolean | undefined;
4266
4275
  /**
@@ -4268,11 +4277,11 @@ type BaseRecommendSearchParams = {
4268
4277
  */
4269
4278
  restrictSearchableAttributes?: Array<string> | undefined;
4270
4279
  /**
4271
- * Facets for which to retrieve facet values that match the search criteria and the number of matching facet values. To retrieve all facets, use the wildcard character `*`. For more information, see [facets](https://www.algolia.com/doc/guides/managing-results/refine-results/faceting/#contextual-facet-values-and-counts).
4280
+ * Facets for which to retrieve facet values that match the search criteria and the number of matching facet values To retrieve all facets, use the wildcard character `*`. For more information, see [facets](https://www.algolia.com/doc/guides/managing-results/refine-results/faceting/#contextual-facet-values-and-counts).
4272
4281
  */
4273
4282
  facets?: Array<string> | undefined;
4274
4283
  /**
4275
- * Whether faceting should be applied after deduplication with `distinct`. This leads to accurate facet counts when using faceting in combination with `distinct`. It\'s usually better to use `afterDistinct` modifiers in the `attributesForFaceting` setting, as `facetingAfterDistinct` only computes correct facet counts if all records have the same facet values for the `attributeForDistinct`.
4284
+ * Whether faceting should be applied after deduplication with `distinct` This leads to accurate facet counts when using faceting in combination with `distinct`. It\'s usually better to use `afterDistinct` modifiers in the `attributesForFaceting` setting, as `facetingAfterDistinct` only computes correct facet counts if all records have the same facet values for the `attributeForDistinct`.
4276
4285
  */
4277
4286
  facetingAfterDistinct?: boolean | undefined;
4278
4287
  /**
@@ -4295,15 +4304,15 @@ type BaseRecommendSearchParams = {
4295
4304
  */
4296
4305
  insidePolygon?: Array<Array<number>> | undefined;
4297
4306
  /**
4298
- * ISO language codes that adjust settings that are useful for processing natural language queries (as opposed to keyword searches): - Sets `removeStopWords` and `ignorePlurals` to the list of provided languages. - Sets `removeWordsIfNoResults` to `allOptional`. - Adds a `natural_language` attribute to `ruleContexts` and `analyticsTags`.
4307
+ * ISO language codes that adjust settings that are useful for processing natural language queries (as opposed to keyword searches) - Sets `removeStopWords` and `ignorePlurals` to the list of provided languages. - Sets `removeWordsIfNoResults` to `allOptional`. - Adds a `natural_language` attribute to `ruleContexts` and `analyticsTags`.
4299
4308
  */
4300
4309
  naturalLanguages?: Array<SupportedLanguage> | undefined;
4301
4310
  /**
4302
- * Assigns a rule context to the search query. [Rule contexts](https://www.algolia.com/doc/guides/managing-results/rules/rules-overview/how-to/customize-search-results-by-platform/#whats-a-context) are strings that you can use to trigger matching rules.
4311
+ * Assigns a rule context to the search query [Rule contexts](https://www.algolia.com/doc/guides/managing-results/rules/rules-overview/how-to/customize-search-results-by-platform/#whats-a-context) are strings that you can use to trigger matching rules.
4303
4312
  */
4304
4313
  ruleContexts?: Array<string> | undefined;
4305
4314
  /**
4306
- * Impact that Personalization should have on this search. The higher this value is, the more Personalization determines the ranking compared to other factors. For more information, see [Understanding Personalization impact](https://www.algolia.com/doc/guides/personalization/personalizing-results/in-depth/configuring-personalization/#understanding-personalization-impact).
4315
+ * Impact that Personalization should have on this search The higher this value is, the more Personalization determines the ranking compared to other factors. For more information, see [Understanding Personalization impact](https://www.algolia.com/doc/guides/personalization/personalizing-results/in-depth/configuring-personalization/#understanding-personalization-impact).
4307
4316
  */
4308
4317
  personalizationImpact?: number | undefined;
4309
4318
  /**
@@ -4319,7 +4328,7 @@ type BaseRecommendSearchParams = {
4319
4328
  */
4320
4329
  synonyms?: boolean | undefined;
4321
4330
  /**
4322
- * Whether to include a `queryID` attribute in the response. The query ID is a unique identifier for a search query and is required for tracking [click and conversion events](https://www.algolia.com/guides/sending-events/getting-started/).
4331
+ * Whether to include a `queryID` attribute in the response The query ID is a unique identifier for a search query and is required for tracking [click and conversion events](https://www.algolia.com/guides/sending-events/getting-started/).
4323
4332
  */
4324
4333
  clickAnalytics?: boolean | undefined;
4325
4334
  /**
@@ -4581,7 +4590,7 @@ type TypoTolerance = boolean | TypoToleranceEnum;
4581
4590
 
4582
4591
  type BaseRecommendIndexSettings = {
4583
4592
  /**
4584
- * Attributes to include in the API response. To reduce the size of your response, you can retrieve only some of the attributes. Attribute names are case-sensitive. - `*` retrieves all attributes, except attributes included in the `customRanking` and `unretrievableAttributes` settings. - To retrieve all attributes except a specific one, prefix the attribute with a dash and combine it with the `*`: `[\"*\", \"-ATTRIBUTE\"]`. - The `objectID` attribute is always included.
4593
+ * Attributes to include in the API response To reduce the size of your response, you can retrieve only some of the attributes. Attribute names are case-sensitive - `*` retrieves all attributes, except attributes included in the `customRanking` and `unretrievableAttributes` settings. - To retrieve all attributes except a specific one, prefix the attribute with a dash and combine it with the `*`: `[\"*\", \"-ATTRIBUTE\"]`. - The `objectID` attribute is always included.
4585
4594
  */
4586
4595
  attributesToRetrieve?: Array<string> | undefined;
4587
4596
  /**
@@ -4589,15 +4598,15 @@ type BaseRecommendIndexSettings = {
4589
4598
  */
4590
4599
  ranking?: Array<string> | undefined;
4591
4600
  /**
4592
- * Relevancy threshold below which less relevant results aren\'t included in the results. You can only set `relevancyStrictness` on [virtual replica indices](https://www.algolia.com/doc/guides/managing-results/refine-results/sorting/in-depth/replicas/#what-are-virtual-replicas). Use this setting to strike a balance between the relevance and number of returned results.
4601
+ * Relevancy threshold below which less relevant results aren\'t included in the results You can only set `relevancyStrictness` on [virtual replica indices](https://www.algolia.com/doc/guides/managing-results/refine-results/sorting/in-depth/replicas/#what-are-virtual-replicas). Use this setting to strike a balance between the relevance and number of returned results.
4593
4602
  */
4594
4603
  relevancyStrictness?: number | undefined;
4595
4604
  /**
4596
- * Attributes to highlight. By default, all searchable attributes are highlighted. Use `*` to highlight all attributes or use an empty array `[]` to turn off highlighting. Attribute names are case-sensitive. With highlighting, strings that match the search query are surrounded by HTML tags defined by `highlightPreTag` and `highlightPostTag`. You can use this to visually highlight matching parts of a search query in your UI. For more information, see [Highlighting and snippeting](https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/highlighting-snippeting/js/).
4605
+ * Attributes to highlight By default, all searchable attributes are highlighted. Use `*` to highlight all attributes or use an empty array `[]` to turn off highlighting. Attribute names are case-sensitive With highlighting, strings that match the search query are surrounded by HTML tags defined by `highlightPreTag` and `highlightPostTag`. You can use this to visually highlight matching parts of a search query in your UI For more information, see [Highlighting and snippeting](https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/highlighting-snippeting/js/).
4597
4606
  */
4598
4607
  attributesToHighlight?: Array<string> | undefined;
4599
4608
  /**
4600
- * Attributes for which to enable snippets. Attribute names are case-sensitive. Snippets provide additional context to matched words. If you enable snippets, they include 10 words, including the matched word. The matched word will also be wrapped by HTML tags for highlighting. You can adjust the number of words with the following notation: `ATTRIBUTE:NUMBER`, where `NUMBER` is the number of words to be extracted.
4609
+ * Attributes for which to enable snippets. Attribute names are case-sensitive Snippets provide additional context to matched words. If you enable snippets, they include 10 words, including the matched word. The matched word will also be wrapped by HTML tags for highlighting. You can adjust the number of words with the following notation: `ATTRIBUTE:NUMBER`, where `NUMBER` is the number of words to be extracted.
4601
4610
  */
4602
4611
  attributesToSnippet?: Array<string> | undefined;
4603
4612
  /**
@@ -4626,21 +4635,21 @@ type BaseRecommendIndexSettings = {
4626
4635
  minWordSizefor2Typos?: number | undefined;
4627
4636
  typoTolerance?: TypoTolerance | undefined;
4628
4637
  /**
4629
- * Whether to allow typos on numbers in the search query. Turn off this setting to reduce the number of irrelevant matches when searching in large sets of similar numbers.
4638
+ * Whether to allow typos on numbers in the search query Turn off this setting to reduce the number of irrelevant matches when searching in large sets of similar numbers.
4630
4639
  */
4631
4640
  allowTyposOnNumericTokens?: boolean | undefined;
4632
4641
  /**
4633
- * Attributes for which you want to turn off [typo tolerance](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/). Attribute names are case-sensitive. Returning only exact matches can help when: - [Searching in hyphenated attributes](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/how-to/how-to-search-in-hyphenated-attributes/). - Reducing the number of matches when you have too many. This can happen with attributes that are long blocks of text, such as product descriptions. Consider alternatives such as `disableTypoToleranceOnWords` or adding synonyms if your attributes have intentional unusual spellings that might look like typos.
4642
+ * Attributes for which you want to turn off [typo tolerance](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/). Attribute names are case-sensitive Returning only exact matches can help when - [Searching in hyphenated attributes](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/how-to/how-to-search-in-hyphenated-attributes/). - Reducing the number of matches when you have too many. This can happen with attributes that are long blocks of text, such as product descriptions Consider alternatives such as `disableTypoToleranceOnWords` or adding synonyms if your attributes have intentional unusual spellings that might look like typos.
4634
4643
  */
4635
4644
  disableTypoToleranceOnAttributes?: Array<string> | undefined;
4636
4645
  ignorePlurals?: IgnorePlurals | undefined;
4637
4646
  removeStopWords?: RemoveStopWords | undefined;
4638
4647
  /**
4639
- * Languages for language-specific query processing steps such as plurals, stop-word removal, and word-detection dictionaries. This setting sets a default list of languages used by the `removeStopWords` and `ignorePlurals` settings. This setting also sets a dictionary for word detection in the logogram-based [CJK](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/normalization/#normalization-for-logogram-based-languages-cjk) languages. To support this, you must place the CJK language **first**. **You should always specify a query language.** If you don\'t specify an indexing language, the search engine uses all [supported languages](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/supported-languages/), or the languages you specified with the `ignorePlurals` or `removeStopWords` parameters. This can lead to unexpected search results. For more information, see [Language-specific configuration](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/).
4648
+ * Languages for language-specific query processing steps such as plurals, stop-word removal, and word-detection dictionaries This setting sets a default list of languages used by the `removeStopWords` and `ignorePlurals` settings. This setting also sets a dictionary for word detection in the logogram-based [CJK](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/normalization/#normalization-for-logogram-based-languages-cjk) languages. To support this, you must place the CJK language **first** **You should always specify a query language.** If you don\'t specify an indexing language, the search engine uses all [supported languages](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/supported-languages/), or the languages you specified with the `ignorePlurals` or `removeStopWords` parameters. This can lead to unexpected search results. For more information, see [Language-specific configuration](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/).
4640
4649
  */
4641
4650
  queryLanguages?: Array<SupportedLanguage> | undefined;
4642
4651
  /**
4643
- * Whether to split compound words in the query into their building blocks. For more information, see [Word segmentation](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/#splitting-compound-words). Word segmentation is supported for these languages: German, Dutch, Finnish, Swedish, and Norwegian. Decompounding doesn\'t work for words with [non-spacing mark Unicode characters](https://www.charactercodes.net/category/non-spacing_mark). For example, `Gartenstühle` won\'t be decompounded if the `ü` consists of `u` (U+0075) and `◌̈` (U+0308).
4652
+ * Whether to split compound words in the query into their building blocks For more information, see [Word segmentation](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/#splitting-compound-words). Word segmentation is supported for these languages: German, Dutch, Finnish, Swedish, and Norwegian. Decompounding doesn\'t work for words with [non-spacing mark Unicode characters](https://www.charactercodes.net/category/non-spacing_mark). For example, `Gartenstühle` won\'t be decompounded if the `ü` consists of `u` (U+0075) and `◌̈` (U+0308).
4644
4653
  */
4645
4654
  decompoundQuery?: boolean | undefined;
4646
4655
  /**
@@ -4654,34 +4663,34 @@ type BaseRecommendIndexSettings = {
4654
4663
  queryType?: QueryType | undefined;
4655
4664
  removeWordsIfNoResults?: RemoveWordsIfNoResults | undefined;
4656
4665
  /**
4657
- * Whether to support phrase matching and excluding words from search queries. Use the `advancedSyntaxFeatures` parameter to control which feature is supported.
4666
+ * Whether to support phrase matching and excluding words from search queries Use the `advancedSyntaxFeatures` parameter to control which feature is supported.
4658
4667
  */
4659
4668
  advancedSyntax?: boolean | undefined;
4660
4669
  optionalWords?: OptionalWords | null | undefined;
4661
4670
  /**
4662
- * Searchable attributes for which you want to [turn off the Exact ranking criterion](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/override-search-engine-defaults/in-depth/adjust-exact-settings/#turn-off-exact-for-some-attributes). Attribute names are case-sensitive. This can be useful for attributes with long values, where the likelihood of an exact match is high, such as product descriptions. Turning off the Exact ranking criterion for these attributes favors exact matching on other attributes. This reduces the impact of individual attributes with a lot of content on ranking.
4671
+ * Searchable attributes for which you want to [turn off the Exact ranking criterion](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/override-search-engine-defaults/in-depth/adjust-exact-settings/#turn-off-exact-for-some-attributes). Attribute names are case-sensitive This can be useful for attributes with long values, where the likelihood of an exact match is high, such as product descriptions. Turning off the Exact ranking criterion for these attributes favors exact matching on other attributes. This reduces the impact of individual attributes with a lot of content on ranking.
4663
4672
  */
4664
4673
  disableExactOnAttributes?: Array<string> | undefined;
4665
4674
  exactOnSingleWordQuery?: ExactOnSingleWordQuery | undefined;
4666
4675
  /**
4667
- * Determine which plurals and synonyms should be considered an exact matches. By default, Algolia treats singular and plural forms of a word, and single-word synonyms, as [exact](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/#exact) matches when searching. For example: - \"swimsuit\" and \"swimsuits\" are treated the same - \"swimsuit\" and \"swimwear\" are treated the same (if they are [synonyms](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/adding-synonyms/#regular-synonyms)). - `ignorePlurals`. Plurals and similar declensions added by the `ignorePlurals` setting are considered exact matches. - `singleWordSynonym`. Single-word synonyms, such as \"NY\" = \"NYC\", are considered exact matches. - `multiWordsSynonym`. Multi-word synonyms, such as \"NY\" = \"New York\", are considered exact matches.
4676
+ * Determine which plurals and synonyms should be considered an exact matches By default, Algolia treats singular and plural forms of a word, and single-word synonyms, as [exact](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/#exact) matches when searching. For example - \"swimsuit\" and \"swimsuits\" are treated the same - \"swimsuit\" and \"swimwear\" are treated the same (if they are [synonyms](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/adding-synonyms/#regular-synonyms)) - `ignorePlurals`. Plurals and similar declensions added by the `ignorePlurals` setting are considered exact matches - `singleWordSynonym`. Single-word synonyms, such as \"NY\" = \"NYC\", are considered exact matches - `multiWordsSynonym`. Multi-word synonyms, such as \"NY\" = \"New York\", are considered exact matches.
4668
4677
  */
4669
4678
  alternativesAsExact?: Array<AlternativesAsExact> | undefined;
4670
4679
  /**
4671
- * Advanced search syntax features you want to support. - `exactPhrase`. Phrases in quotes must match exactly. For example, `sparkly blue \"iPhone case\"` only returns records with the exact string \"iPhone case\". - `excludeWords`. Query words prefixed with a `-` must not occur in a record. For example, `search -engine` matches records that contain \"search\" but not \"engine\". This setting only has an effect if `advancedSyntax` is true.
4680
+ * Advanced search syntax features you want to support - `exactPhrase`. Phrases in quotes must match exactly. For example, `sparkly blue \"iPhone case\"` only returns records with the exact string \"iPhone case\" - `excludeWords`. Query words prefixed with a `-` must not occur in a record. For example, `search -engine` matches records that contain \"search\" but not \"engine\" This setting only has an effect if `advancedSyntax` is true.
4672
4681
  */
4673
4682
  advancedSyntaxFeatures?: Array<AdvancedSyntaxFeatures> | undefined;
4674
4683
  distinct?: Distinct | undefined;
4675
4684
  /**
4676
- * Whether to replace a highlighted word with the matched synonym. By default, the original words are highlighted even if a synonym matches. For example, with `home` as a synonym for `house` and a search for `home`, records matching either \"home\" or \"house\" are included in the search results, and either \"home\" or \"house\" are highlighted. With `replaceSynonymsInHighlight` set to `true`, a search for `home` still matches the same records, but all occurrences of \"house\" are replaced by \"home\" in the highlighted response.
4685
+ * Whether to replace a highlighted word with the matched synonym By default, the original words are highlighted even if a synonym matches. For example, with `home` as a synonym for `house` and a search for `home`, records matching either \"home\" or \"house\" are included in the search results, and either \"home\" or \"house\" are highlighted With `replaceSynonymsInHighlight` set to `true`, a search for `home` still matches the same records, but all occurrences of \"house\" are replaced by \"home\" in the highlighted response.
4677
4686
  */
4678
4687
  replaceSynonymsInHighlight?: boolean | undefined;
4679
4688
  /**
4680
- * Minimum proximity score for two matching words. This adjusts the [Proximity ranking criterion](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/#proximity) by equally scoring matches that are farther apart. For example, if `minProximity` is 2, neighboring matches and matches with one word between them would have the same score.
4689
+ * Minimum proximity score for two matching words This adjusts the [Proximity ranking criterion](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/#proximity) by equally scoring matches that are farther apart For example, if `minProximity` is 2, neighboring matches and matches with one word between them would have the same score.
4681
4690
  */
4682
4691
  minProximity?: number | undefined;
4683
4692
  /**
4684
- * Properties to include in the API response of search and browse requests. By default, all response properties are included. To reduce the response size, you can select which properties should be included. An empty list may lead to an empty API response (except properties you can\'t exclude). You can\'t exclude these properties: `message`, `warning`, `cursor`, `abTestVariantID`, or any property added by setting `getRankingInfo` to true. Your search depends on the `hits` field. If you omit this field, searches won\'t return any results. Your UI might also depend on other properties, for example, for pagination. Before restricting the response size, check the impact on your search experience.
4693
+ * Properties to include in the API response of search and browse requests By default, all response properties are included. To reduce the response size, you can select which properties should be included An empty list may lead to an empty API response (except properties you can\'t exclude) You can\'t exclude these properties: `message`, `warning`, `cursor`, `abTestVariantID`, or any property added by setting `getRankingInfo` to true Your search depends on the `hits` field. If you omit this field, searches won\'t return any results. Your UI might also depend on other properties, for example, for pagination. Before restricting the response size, check the impact on your search experience.
4685
4694
  */
4686
4695
  responseFields?: Array<string> | undefined;
4687
4696
  /**
@@ -4689,16 +4698,16 @@ type BaseRecommendIndexSettings = {
4689
4698
  */
4690
4699
  maxValuesPerFacet?: number | undefined;
4691
4700
  /**
4692
- * Order in which to retrieve facet values. - `count`. Facet values are retrieved by decreasing count. The count is the number of matching records containing this facet value. - `alpha`. Retrieve facet values alphabetically. This setting doesn\'t influence how facet values are displayed in your UI (see `renderingContent`). For more information, see [facet value display](https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/facet-display/js/).
4701
+ * Order in which to retrieve facet values - `count`. Facet values are retrieved by decreasing count. The count is the number of matching records containing this facet value - `alpha`. Retrieve facet values alphabetically This setting doesn\'t influence how facet values are displayed in your UI (see `renderingContent`). For more information, see [facet value display](https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/facet-display/js/).
4693
4702
  */
4694
4703
  sortFacetValuesBy?: string | undefined;
4695
4704
  /**
4696
- * Whether the best matching attribute should be determined by minimum proximity. This setting only affects ranking if the Attribute ranking criterion comes before Proximity in the `ranking` setting. If true, the best matching attribute is selected based on the minimum proximity of multiple matches. Otherwise, the best matching attribute is determined by the order in the `searchableAttributes` setting.
4705
+ * Whether the best matching attribute should be determined by minimum proximity This setting only affects ranking if the Attribute ranking criterion comes before Proximity in the `ranking` setting. If true, the best matching attribute is selected based on the minimum proximity of multiple matches. Otherwise, the best matching attribute is determined by the order in the `searchableAttributes` setting.
4697
4706
  */
4698
4707
  attributeCriteriaComputedByMinProximity?: boolean | undefined;
4699
4708
  renderingContent?: RenderingContent | undefined;
4700
4709
  /**
4701
- * Whether this search will use [Dynamic Re-Ranking](https://www.algolia.com/doc/guides/algolia-ai/re-ranking/). This setting only has an effect if you activated Dynamic Re-Ranking for this index in the Algolia dashboard.
4710
+ * Whether this search will use [Dynamic Re-Ranking](https://www.algolia.com/doc/guides/algolia-ai/re-ranking/) This setting only has an effect if you activated Dynamic Re-Ranking for this index in the Algolia dashboard.
4702
4711
  */
4703
4712
  enableReRanking?: boolean | undefined;
4704
4713
  reRankingApplyFilter?: ReRankingApplyFilter | null | undefined;
@@ -5246,7 +5255,7 @@ type SearchForFacetsOptions = {
5246
5255
 
5247
5256
  type BaseSearchParamsWithoutQuery = {
5248
5257
  /**
5249
- * Keywords to be used instead of the search query to conduct a more broader search. Using the `similarQuery` parameter changes other settings: - `queryType` is set to `prefixNone`. - `removeStopWords` is set to true. - `words` is set as the first ranking criterion. - All remaining words are treated as `optionalWords`. Since the `similarQuery` is supposed to do a broad search, they usually return many results. Combine it with `filters` to narrow down the list of results.
5258
+ * Keywords to be used instead of the search query to conduct a more broader search Using the `similarQuery` parameter changes other settings - `queryType` is set to `prefixNone`. - `removeStopWords` is set to true. - `words` is set as the first ranking criterion. - All remaining words are treated as `optionalWords` Since the `similarQuery` is supposed to do a broad search, they usually return many results. Combine it with `filters` to narrow down the list of results.
5250
5259
  */
5251
5260
  similarQuery?: string | undefined;
5252
5261
  /**
@@ -5258,7 +5267,7 @@ type BaseSearchParamsWithoutQuery = {
5258
5267
  numericFilters?: NumericFilters | undefined;
5259
5268
  tagFilters?: TagFilters | undefined;
5260
5269
  /**
5261
- * Whether to sum all filter scores. If true, all filter scores are summed. Otherwise, the maximum filter score is kept. For more information, see [filter scores](https://www.algolia.com/doc/guides/managing-results/refine-results/filtering/in-depth/filter-scoring/#accumulating-scores-with-sumorfiltersscores).
5270
+ * Whether to sum all filter scores If true, all filter scores are summed. Otherwise, the maximum filter score is kept. For more information, see [filter scores](https://www.algolia.com/doc/guides/managing-results/refine-results/filtering/in-depth/filter-scoring/#accumulating-scores-with-sumorfiltersscores).
5262
5271
  */
5263
5272
  sumOrFiltersScores?: boolean | undefined;
5264
5273
  /**
@@ -5266,11 +5275,11 @@ type BaseSearchParamsWithoutQuery = {
5266
5275
  */
5267
5276
  restrictSearchableAttributes?: Array<string> | undefined;
5268
5277
  /**
5269
- * Facets for which to retrieve facet values that match the search criteria and the number of matching facet values. To retrieve all facets, use the wildcard character `*`. For more information, see [facets](https://www.algolia.com/doc/guides/managing-results/refine-results/faceting/#contextual-facet-values-and-counts).
5278
+ * Facets for which to retrieve facet values that match the search criteria and the number of matching facet values To retrieve all facets, use the wildcard character `*`. For more information, see [facets](https://www.algolia.com/doc/guides/managing-results/refine-results/faceting/#contextual-facet-values-and-counts).
5270
5279
  */
5271
5280
  facets?: Array<string> | undefined;
5272
5281
  /**
5273
- * Whether faceting should be applied after deduplication with `distinct`. This leads to accurate facet counts when using faceting in combination with `distinct`. It\'s usually better to use `afterDistinct` modifiers in the `attributesForFaceting` setting, as `facetingAfterDistinct` only computes correct facet counts if all records have the same facet values for the `attributeForDistinct`.
5282
+ * Whether faceting should be applied after deduplication with `distinct` This leads to accurate facet counts when using faceting in combination with `distinct`. It\'s usually better to use `afterDistinct` modifiers in the `attributesForFaceting` setting, as `facetingAfterDistinct` only computes correct facet counts if all records have the same facet values for the `attributeForDistinct`.
5274
5283
  */
5275
5284
  facetingAfterDistinct?: boolean | undefined;
5276
5285
  /**
@@ -5305,15 +5314,15 @@ type BaseSearchParamsWithoutQuery = {
5305
5314
  */
5306
5315
  insidePolygon?: Array<Array<number>> | undefined;
5307
5316
  /**
5308
- * ISO language codes that adjust settings that are useful for processing natural language queries (as opposed to keyword searches): - Sets `removeStopWords` and `ignorePlurals` to the list of provided languages. - Sets `removeWordsIfNoResults` to `allOptional`. - Adds a `natural_language` attribute to `ruleContexts` and `analyticsTags`.
5317
+ * ISO language codes that adjust settings that are useful for processing natural language queries (as opposed to keyword searches) - Sets `removeStopWords` and `ignorePlurals` to the list of provided languages. - Sets `removeWordsIfNoResults` to `allOptional`. - Adds a `natural_language` attribute to `ruleContexts` and `analyticsTags`.
5309
5318
  */
5310
5319
  naturalLanguages?: Array<SupportedLanguage> | undefined;
5311
5320
  /**
5312
- * Assigns a rule context to the search query. [Rule contexts](https://www.algolia.com/doc/guides/managing-results/rules/rules-overview/how-to/customize-search-results-by-platform/#whats-a-context) are strings that you can use to trigger matching rules.
5321
+ * Assigns a rule context to the search query [Rule contexts](https://www.algolia.com/doc/guides/managing-results/rules/rules-overview/how-to/customize-search-results-by-platform/#whats-a-context) are strings that you can use to trigger matching rules.
5313
5322
  */
5314
5323
  ruleContexts?: Array<string> | undefined;
5315
5324
  /**
5316
- * Impact that Personalization should have on this search. The higher this value is, the more Personalization determines the ranking compared to other factors. For more information, see [Understanding Personalization impact](https://www.algolia.com/doc/guides/personalization/personalizing-results/in-depth/configuring-personalization/#understanding-personalization-impact).
5325
+ * Impact that Personalization should have on this search The higher this value is, the more Personalization determines the ranking compared to other factors. For more information, see [Understanding Personalization impact](https://www.algolia.com/doc/guides/personalization/personalizing-results/in-depth/configuring-personalization/#understanding-personalization-impact).
5317
5326
  */
5318
5327
  personalizationImpact?: number | undefined;
5319
5328
  /**
@@ -5329,7 +5338,7 @@ type BaseSearchParamsWithoutQuery = {
5329
5338
  */
5330
5339
  synonyms?: boolean | undefined;
5331
5340
  /**
5332
- * Whether to include a `queryID` attribute in the response. The query ID is a unique identifier for a search query and is required for tracking [click and conversion events](https://www.algolia.com/guides/sending-events/getting-started/).
5341
+ * Whether to include a `queryID` attribute in the response The query ID is a unique identifier for a search query and is required for tracking [click and conversion events](https://www.algolia.com/guides/sending-events/getting-started/).
5333
5342
  */
5334
5343
  clickAnalytics?: boolean | undefined;
5335
5344
  /**
@@ -5369,7 +5378,7 @@ type SemanticSearch = {
5369
5378
 
5370
5379
  type IndexSettingsAsSearchParams = {
5371
5380
  /**
5372
- * Attributes to include in the API response. To reduce the size of your response, you can retrieve only some of the attributes. Attribute names are case-sensitive. - `*` retrieves all attributes, except attributes included in the `customRanking` and `unretrievableAttributes` settings. - To retrieve all attributes except a specific one, prefix the attribute with a dash and combine it with the `*`: `[\"*\", \"-ATTRIBUTE\"]`. - The `objectID` attribute is always included.
5381
+ * Attributes to include in the API response To reduce the size of your response, you can retrieve only some of the attributes. Attribute names are case-sensitive - `*` retrieves all attributes, except attributes included in the `customRanking` and `unretrievableAttributes` settings. - To retrieve all attributes except a specific one, prefix the attribute with a dash and combine it with the `*`: `[\"*\", \"-ATTRIBUTE\"]`. - The `objectID` attribute is always included.
5373
5382
  */
5374
5383
  attributesToRetrieve?: Array<string> | undefined;
5375
5384
  /**
@@ -5377,15 +5386,15 @@ type IndexSettingsAsSearchParams = {
5377
5386
  */
5378
5387
  ranking?: Array<string> | undefined;
5379
5388
  /**
5380
- * Relevancy threshold below which less relevant results aren\'t included in the results. You can only set `relevancyStrictness` on [virtual replica indices](https://www.algolia.com/doc/guides/managing-results/refine-results/sorting/in-depth/replicas/#what-are-virtual-replicas). Use this setting to strike a balance between the relevance and number of returned results.
5389
+ * Relevancy threshold below which less relevant results aren\'t included in the results You can only set `relevancyStrictness` on [virtual replica indices](https://www.algolia.com/doc/guides/managing-results/refine-results/sorting/in-depth/replicas/#what-are-virtual-replicas). Use this setting to strike a balance between the relevance and number of returned results.
5381
5390
  */
5382
5391
  relevancyStrictness?: number | undefined;
5383
5392
  /**
5384
- * Attributes to highlight. By default, all searchable attributes are highlighted. Use `*` to highlight all attributes or use an empty array `[]` to turn off highlighting. Attribute names are case-sensitive. With highlighting, strings that match the search query are surrounded by HTML tags defined by `highlightPreTag` and `highlightPostTag`. You can use this to visually highlight matching parts of a search query in your UI. For more information, see [Highlighting and snippeting](https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/highlighting-snippeting/js/).
5393
+ * Attributes to highlight By default, all searchable attributes are highlighted. Use `*` to highlight all attributes or use an empty array `[]` to turn off highlighting. Attribute names are case-sensitive With highlighting, strings that match the search query are surrounded by HTML tags defined by `highlightPreTag` and `highlightPostTag`. You can use this to visually highlight matching parts of a search query in your UI For more information, see [Highlighting and snippeting](https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/highlighting-snippeting/js/).
5385
5394
  */
5386
5395
  attributesToHighlight?: Array<string> | undefined;
5387
5396
  /**
5388
- * Attributes for which to enable snippets. Attribute names are case-sensitive. Snippets provide additional context to matched words. If you enable snippets, they include 10 words, including the matched word. The matched word will also be wrapped by HTML tags for highlighting. You can adjust the number of words with the following notation: `ATTRIBUTE:NUMBER`, where `NUMBER` is the number of words to be extracted.
5397
+ * Attributes for which to enable snippets. Attribute names are case-sensitive Snippets provide additional context to matched words. If you enable snippets, they include 10 words, including the matched word. The matched word will also be wrapped by HTML tags for highlighting. You can adjust the number of words with the following notation: `ATTRIBUTE:NUMBER`, where `NUMBER` is the number of words to be extracted.
5389
5398
  */
5390
5399
  attributesToSnippet?: Array<string> | undefined;
5391
5400
  /**
@@ -5418,21 +5427,21 @@ type IndexSettingsAsSearchParams = {
5418
5427
  minWordSizefor2Typos?: number | undefined;
5419
5428
  typoTolerance?: TypoTolerance | undefined;
5420
5429
  /**
5421
- * Whether to allow typos on numbers in the search query. Turn off this setting to reduce the number of irrelevant matches when searching in large sets of similar numbers.
5430
+ * Whether to allow typos on numbers in the search query Turn off this setting to reduce the number of irrelevant matches when searching in large sets of similar numbers.
5422
5431
  */
5423
5432
  allowTyposOnNumericTokens?: boolean | undefined;
5424
5433
  /**
5425
- * Attributes for which you want to turn off [typo tolerance](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/). Attribute names are case-sensitive. Returning only exact matches can help when: - [Searching in hyphenated attributes](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/how-to/how-to-search-in-hyphenated-attributes/). - Reducing the number of matches when you have too many. This can happen with attributes that are long blocks of text, such as product descriptions. Consider alternatives such as `disableTypoToleranceOnWords` or adding synonyms if your attributes have intentional unusual spellings that might look like typos.
5434
+ * Attributes for which you want to turn off [typo tolerance](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/). Attribute names are case-sensitive Returning only exact matches can help when - [Searching in hyphenated attributes](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/typo-tolerance/how-to/how-to-search-in-hyphenated-attributes/). - Reducing the number of matches when you have too many. This can happen with attributes that are long blocks of text, such as product descriptions Consider alternatives such as `disableTypoToleranceOnWords` or adding synonyms if your attributes have intentional unusual spellings that might look like typos.
5426
5435
  */
5427
5436
  disableTypoToleranceOnAttributes?: Array<string> | undefined;
5428
5437
  ignorePlurals?: IgnorePlurals | undefined;
5429
5438
  removeStopWords?: RemoveStopWords | undefined;
5430
5439
  /**
5431
- * Languages for language-specific query processing steps such as plurals, stop-word removal, and word-detection dictionaries. This setting sets a default list of languages used by the `removeStopWords` and `ignorePlurals` settings. This setting also sets a dictionary for word detection in the logogram-based [CJK](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/normalization/#normalization-for-logogram-based-languages-cjk) languages. To support this, you must place the CJK language **first**. **You should always specify a query language.** If you don\'t specify an indexing language, the search engine uses all [supported languages](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/supported-languages/), or the languages you specified with the `ignorePlurals` or `removeStopWords` parameters. This can lead to unexpected search results. For more information, see [Language-specific configuration](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/).
5440
+ * Languages for language-specific query processing steps such as plurals, stop-word removal, and word-detection dictionaries This setting sets a default list of languages used by the `removeStopWords` and `ignorePlurals` settings. This setting also sets a dictionary for word detection in the logogram-based [CJK](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/normalization/#normalization-for-logogram-based-languages-cjk) languages. To support this, you must place the CJK language **first** **You should always specify a query language.** If you don\'t specify an indexing language, the search engine uses all [supported languages](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/supported-languages/), or the languages you specified with the `ignorePlurals` or `removeStopWords` parameters. This can lead to unexpected search results. For more information, see [Language-specific configuration](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/).
5432
5441
  */
5433
5442
  queryLanguages?: Array<SupportedLanguage> | undefined;
5434
5443
  /**
5435
- * Whether to split compound words in the query into their building blocks. For more information, see [Word segmentation](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/#splitting-compound-words). Word segmentation is supported for these languages: German, Dutch, Finnish, Swedish, and Norwegian. Decompounding doesn\'t work for words with [non-spacing mark Unicode characters](https://www.charactercodes.net/category/non-spacing_mark). For example, `Gartenstühle` won\'t be decompounded if the `ü` consists of `u` (U+0075) and `◌̈` (U+0308).
5444
+ * Whether to split compound words in the query into their building blocks For more information, see [Word segmentation](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/handling-natural-languages-nlp/in-depth/language-specific-configurations/#splitting-compound-words). Word segmentation is supported for these languages: German, Dutch, Finnish, Swedish, and Norwegian. Decompounding doesn\'t work for words with [non-spacing mark Unicode characters](https://www.charactercodes.net/category/non-spacing_mark). For example, `Gartenstühle` won\'t be decompounded if the `ü` consists of `u` (U+0075) and `◌̈` (U+0308).
5436
5445
  */
5437
5446
  decompoundQuery?: boolean | undefined;
5438
5447
  /**
@@ -5448,34 +5457,34 @@ type IndexSettingsAsSearchParams = {
5448
5457
  mode?: Mode | undefined;
5449
5458
  semanticSearch?: SemanticSearch | undefined;
5450
5459
  /**
5451
- * Whether to support phrase matching and excluding words from search queries. Use the `advancedSyntaxFeatures` parameter to control which feature is supported.
5460
+ * Whether to support phrase matching and excluding words from search queries Use the `advancedSyntaxFeatures` parameter to control which feature is supported.
5452
5461
  */
5453
5462
  advancedSyntax?: boolean | undefined;
5454
5463
  optionalWords?: OptionalWords | null | undefined;
5455
5464
  /**
5456
- * Searchable attributes for which you want to [turn off the Exact ranking criterion](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/override-search-engine-defaults/in-depth/adjust-exact-settings/#turn-off-exact-for-some-attributes). Attribute names are case-sensitive. This can be useful for attributes with long values, where the likelihood of an exact match is high, such as product descriptions. Turning off the Exact ranking criterion for these attributes favors exact matching on other attributes. This reduces the impact of individual attributes with a lot of content on ranking.
5465
+ * Searchable attributes for which you want to [turn off the Exact ranking criterion](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/override-search-engine-defaults/in-depth/adjust-exact-settings/#turn-off-exact-for-some-attributes). Attribute names are case-sensitive This can be useful for attributes with long values, where the likelihood of an exact match is high, such as product descriptions. Turning off the Exact ranking criterion for these attributes favors exact matching on other attributes. This reduces the impact of individual attributes with a lot of content on ranking.
5457
5466
  */
5458
5467
  disableExactOnAttributes?: Array<string> | undefined;
5459
5468
  exactOnSingleWordQuery?: ExactOnSingleWordQuery | undefined;
5460
5469
  /**
5461
- * Determine which plurals and synonyms should be considered an exact matches. By default, Algolia treats singular and plural forms of a word, and single-word synonyms, as [exact](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/#exact) matches when searching. For example: - \"swimsuit\" and \"swimsuits\" are treated the same - \"swimsuit\" and \"swimwear\" are treated the same (if they are [synonyms](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/adding-synonyms/#regular-synonyms)). - `ignorePlurals`. Plurals and similar declensions added by the `ignorePlurals` setting are considered exact matches. - `singleWordSynonym`. Single-word synonyms, such as \"NY\" = \"NYC\", are considered exact matches. - `multiWordsSynonym`. Multi-word synonyms, such as \"NY\" = \"New York\", are considered exact matches.
5470
+ * Determine which plurals and synonyms should be considered an exact matches By default, Algolia treats singular and plural forms of a word, and single-word synonyms, as [exact](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/#exact) matches when searching. For example - \"swimsuit\" and \"swimsuits\" are treated the same - \"swimsuit\" and \"swimwear\" are treated the same (if they are [synonyms](https://www.algolia.com/doc/guides/managing-results/optimize-search-results/adding-synonyms/#regular-synonyms)) - `ignorePlurals`. Plurals and similar declensions added by the `ignorePlurals` setting are considered exact matches - `singleWordSynonym`. Single-word synonyms, such as \"NY\" = \"NYC\", are considered exact matches - `multiWordsSynonym`. Multi-word synonyms, such as \"NY\" = \"New York\", are considered exact matches.
5462
5471
  */
5463
5472
  alternativesAsExact?: Array<AlternativesAsExact> | undefined;
5464
5473
  /**
5465
- * Advanced search syntax features you want to support. - `exactPhrase`. Phrases in quotes must match exactly. For example, `sparkly blue \"iPhone case\"` only returns records with the exact string \"iPhone case\". - `excludeWords`. Query words prefixed with a `-` must not occur in a record. For example, `search -engine` matches records that contain \"search\" but not \"engine\". This setting only has an effect if `advancedSyntax` is true.
5474
+ * Advanced search syntax features you want to support - `exactPhrase`. Phrases in quotes must match exactly. For example, `sparkly blue \"iPhone case\"` only returns records with the exact string \"iPhone case\" - `excludeWords`. Query words prefixed with a `-` must not occur in a record. For example, `search -engine` matches records that contain \"search\" but not \"engine\" This setting only has an effect if `advancedSyntax` is true.
5466
5475
  */
5467
5476
  advancedSyntaxFeatures?: Array<AdvancedSyntaxFeatures> | undefined;
5468
5477
  distinct?: Distinct | undefined;
5469
5478
  /**
5470
- * Whether to replace a highlighted word with the matched synonym. By default, the original words are highlighted even if a synonym matches. For example, with `home` as a synonym for `house` and a search for `home`, records matching either \"home\" or \"house\" are included in the search results, and either \"home\" or \"house\" are highlighted. With `replaceSynonymsInHighlight` set to `true`, a search for `home` still matches the same records, but all occurrences of \"house\" are replaced by \"home\" in the highlighted response.
5479
+ * Whether to replace a highlighted word with the matched synonym By default, the original words are highlighted even if a synonym matches. For example, with `home` as a synonym for `house` and a search for `home`, records matching either \"home\" or \"house\" are included in the search results, and either \"home\" or \"house\" are highlighted With `replaceSynonymsInHighlight` set to `true`, a search for `home` still matches the same records, but all occurrences of \"house\" are replaced by \"home\" in the highlighted response.
5471
5480
  */
5472
5481
  replaceSynonymsInHighlight?: boolean | undefined;
5473
5482
  /**
5474
- * Minimum proximity score for two matching words. This adjusts the [Proximity ranking criterion](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/#proximity) by equally scoring matches that are farther apart. For example, if `minProximity` is 2, neighboring matches and matches with one word between them would have the same score.
5483
+ * Minimum proximity score for two matching words This adjusts the [Proximity ranking criterion](https://www.algolia.com/doc/guides/managing-results/relevance-overview/in-depth/ranking-criteria/#proximity) by equally scoring matches that are farther apart For example, if `minProximity` is 2, neighboring matches and matches with one word between them would have the same score.
5475
5484
  */
5476
5485
  minProximity?: number | undefined;
5477
5486
  /**
5478
- * Properties to include in the API response of search and browse requests. By default, all response properties are included. To reduce the response size, you can select which properties should be included. An empty list may lead to an empty API response (except properties you can\'t exclude). You can\'t exclude these properties: `message`, `warning`, `cursor`, `abTestVariantID`, or any property added by setting `getRankingInfo` to true. Your search depends on the `hits` field. If you omit this field, searches won\'t return any results. Your UI might also depend on other properties, for example, for pagination. Before restricting the response size, check the impact on your search experience.
5487
+ * Properties to include in the API response of search and browse requests By default, all response properties are included. To reduce the response size, you can select which properties should be included An empty list may lead to an empty API response (except properties you can\'t exclude) You can\'t exclude these properties: `message`, `warning`, `cursor`, `abTestVariantID`, or any property added by setting `getRankingInfo` to true Your search depends on the `hits` field. If you omit this field, searches won\'t return any results. Your UI might also depend on other properties, for example, for pagination. Before restricting the response size, check the impact on your search experience.
5479
5488
  */
5480
5489
  responseFields?: Array<string> | undefined;
5481
5490
  /**
@@ -5483,16 +5492,16 @@ type IndexSettingsAsSearchParams = {
5483
5492
  */
5484
5493
  maxValuesPerFacet?: number | undefined;
5485
5494
  /**
5486
- * Order in which to retrieve facet values. - `count`. Facet values are retrieved by decreasing count. The count is the number of matching records containing this facet value. - `alpha`. Retrieve facet values alphabetically. This setting doesn\'t influence how facet values are displayed in your UI (see `renderingContent`). For more information, see [facet value display](https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/facet-display/js/).
5495
+ * Order in which to retrieve facet values - `count`. Facet values are retrieved by decreasing count. The count is the number of matching records containing this facet value - `alpha`. Retrieve facet values alphabetically This setting doesn\'t influence how facet values are displayed in your UI (see `renderingContent`). For more information, see [facet value display](https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/facet-display/js/).
5487
5496
  */
5488
5497
  sortFacetValuesBy?: string | undefined;
5489
5498
  /**
5490
- * Whether the best matching attribute should be determined by minimum proximity. This setting only affects ranking if the Attribute ranking criterion comes before Proximity in the `ranking` setting. If true, the best matching attribute is selected based on the minimum proximity of multiple matches. Otherwise, the best matching attribute is determined by the order in the `searchableAttributes` setting.
5499
+ * Whether the best matching attribute should be determined by minimum proximity This setting only affects ranking if the Attribute ranking criterion comes before Proximity in the `ranking` setting. If true, the best matching attribute is selected based on the minimum proximity of multiple matches. Otherwise, the best matching attribute is determined by the order in the `searchableAttributes` setting.
5491
5500
  */
5492
5501
  attributeCriteriaComputedByMinProximity?: boolean | undefined;
5493
5502
  renderingContent?: RenderingContent | undefined;
5494
5503
  /**
5495
- * Whether this search will use [Dynamic Re-Ranking](https://www.algolia.com/doc/guides/algolia-ai/re-ranking/). This setting only has an effect if you activated Dynamic Re-Ranking for this index in the Algolia dashboard.
5504
+ * Whether this search will use [Dynamic Re-Ranking](https://www.algolia.com/doc/guides/algolia-ai/re-ranking/) This setting only has an effect if you activated Dynamic Re-Ranking for this index in the Algolia dashboard.
5496
5505
  */
5497
5506
  enableReRanking?: boolean | undefined;
5498
5507
  reRankingApplyFilter?: ReRankingApplyFilter | null | undefined;
@@ -5630,7 +5639,7 @@ type SearchResponses<T = Record<string, unknown>> = {
5630
5639
  */
5631
5640
  type CustomPostProps = {
5632
5641
  /**
5633
- * Path of the endpoint, anything after \"/1\" must be specified.
5642
+ * Path of the endpoint, for example `1/newFeature`.
5634
5643
  */
5635
5644
  path: string;
5636
5645
  /**
@@ -5736,7 +5745,7 @@ declare function createLiteClient({ appId: appIdOption, apiKey: apiKeyOption, au
5736
5745
  /**
5737
5746
  * This method lets you send requests to the Algolia REST API.
5738
5747
  * @param customPost - The customPost object.
5739
- * @param customPost.path - Path of the endpoint, anything after \"/1\" must be specified.
5748
+ * @param customPost.path - Path of the endpoint, for example `1/newFeature`.
5740
5749
  * @param customPost.parameters - Query parameters to apply to the current query.
5741
5750
  * @param customPost.body - Parameters to send with the custom request.
5742
5751
  * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
@@ -8378,6 +8387,13 @@ type DocSearchTransformClient = {
8378
8387
  addAlgoliaAgent: LiteClient['addAlgoliaAgent'];
8379
8388
  transporter: Pick<LiteClient['transporter'], 'algoliaAgent'>;
8380
8389
  };
8390
+ type AskAiSearchParameters = {
8391
+ facetFilters?: string[];
8392
+ filters?: string;
8393
+ attributesToRetrieve?: string[];
8394
+ restrictSearchableAttributes?: string[];
8395
+ distinct?: boolean;
8396
+ };
8381
8397
  type DocSearchAskAi = {
8382
8398
  /**
8383
8399
  * The index name to use for the ask AI feature. Your assistant will search this index for relevant documents.
@@ -8401,9 +8417,7 @@ type DocSearchAskAi = {
8401
8417
  /**
8402
8418
  * The search parameters to use for the ask AI feature.
8403
8419
  */
8404
- searchParameters?: {
8405
- facetFilters?: SearchParamsObject['facetFilters'];
8406
- };
8420
+ searchParameters?: AskAiSearchParameters;
8407
8421
  };
8408
8422
  interface DocSearchIndex {
8409
8423
  name: string;
@@ -8539,6 +8553,11 @@ type FooterTranslations = Partial<{
8539
8553
  poweredByText: string;
8540
8554
  }>;
8541
8555
 
8556
+ type NewConversationTranslations = Partial<{
8557
+ newConversationTitle: string;
8558
+ newConversationDescription: string;
8559
+ }>;
8560
+
8542
8561
  type AskAiScreenTranslations = Partial<{
8543
8562
  disclaimerText: string;
8544
8563
  relatedSourcesText: string;
@@ -8568,6 +8587,10 @@ type AskAiScreenTranslations = Partial<{
8568
8587
  lastSeparator?: string;
8569
8588
  after?: string;
8570
8589
  };
8590
+ /**
8591
+ * Message that's shown when user has stopped the streaming of a message.
8592
+ */
8593
+ stoppedStreamingText: string;
8571
8594
  }>;
8572
8595
 
8573
8596
  type ErrorScreenTranslations = Partial<{
@@ -8584,6 +8607,7 @@ type NoResultsScreenTranslations = Partial<{
8584
8607
 
8585
8608
  type ResultsScreenTranslations = Partial<{
8586
8609
  askAiPlaceholder: string;
8610
+ noResultsAskAiPlaceholder: string;
8587
8611
  }>;
8588
8612
 
8589
8613
  type StartScreenTranslations = Partial<{
@@ -8603,6 +8627,7 @@ type ScreenStateTranslations = Partial<{
8603
8627
  noResultsScreen: NoResultsScreenTranslations;
8604
8628
  resultsScreen: ResultsScreenTranslations;
8605
8629
  askAiScreen: AskAiScreenTranslations;
8630
+ newConversation: NewConversationTranslations;
8606
8631
  }>;
8607
8632
 
8608
8633
  type SearchBoxTranslations = Partial<{
@@ -8618,10 +8643,15 @@ type SearchBoxTranslations = Partial<{
8618
8643
  searchInputLabel: string;
8619
8644
  backToKeywordSearchButtonText: string;
8620
8645
  backToKeywordSearchButtonAriaLabel: string;
8646
+ newConversationPlaceholder: string;
8647
+ conversationHistoryTitle: string;
8648
+ startNewConversationText: string;
8649
+ viewConversationHistoryText: string;
8621
8650
  }>;
8622
8651
 
8623
8652
  type ModalTranslations = Partial<{
8624
8653
  searchBox: SearchBoxTranslations;
8654
+ newConversation: NewConversationTranslations;
8625
8655
  footer: FooterTranslations;
8626
8656
  }> & ScreenStateTranslations;
8627
8657