/** API is not yet fully migrated to FQDN entity */ export interface SiteDocument { /** the document payload */ document?: Record | null; } export interface UpdateInternalDocumentsEvent extends UpdateInternalDocumentsEventOperationOneOf { /** insert/update documents */ update?: InternalDocumentUpdateOperation; /** delete by document ids */ deleteByIds?: DeleteByIdsOperation; /** delete documents matching filter */ deleteByFilter?: DeleteByFilterOperation; /** update internal documents matching filter */ updateByFilter?: InternalDocumentUpdateByFilterOperation; /** update only existing documents */ updateExisting?: InternalUpdateExistingOperation; /** insert/update documents with versioning */ versionedUpdate?: VersionedDocumentUpdateOperation; /** delete by document ids with versioning */ versionedDeleteByIds?: VersionedDeleteByIdsOperation; /** type of the documents */ documentType?: string; /** language of the documents (mandatory) */ language?: string | null; /** * one or more search documents * @deprecated */ addDocuments?: InternalDocument[]; /** * one or more ids of indexed documents to be removed. Removal will happen before addition (if both provided) * @deprecated */ removeDocumentIds?: string[]; /** id to pass to processing notification */ correlationId?: string | null; /** when event was created / issued */ issuedAt?: Date | null; } /** @oneof */ export interface UpdateInternalDocumentsEventOperationOneOf { /** insert/update documents */ update?: InternalDocumentUpdateOperation; /** delete by document ids */ deleteByIds?: DeleteByIdsOperation; /** delete documents matching filter */ deleteByFilter?: DeleteByFilterOperation; /** update internal documents matching filter */ updateByFilter?: InternalDocumentUpdateByFilterOperation; /** update only existing documents */ updateExisting?: InternalUpdateExistingOperation; /** insert/update documents with versioning */ versionedUpdate?: VersionedDocumentUpdateOperation; /** delete by document ids with versioning */ versionedDeleteByIds?: VersionedDeleteByIdsOperation; } export interface InternalDocument { /** document with mandatory fields (id) and with fields specific to the type of the document */ document?: Record | null; } export interface InternalDocumentUpdateOperation { /** documents to index or update */ documents?: InternalDocument[]; } export interface DeleteByIdsOperation { /** ids of the documents to delete */ documentIds?: string[]; } export interface DeleteByFilterOperation { /** documents matching this filter wil be deleted. only filterable documents defined in document_type can be used for filtering */ filter?: Record | null; } export interface InternalDocumentUpdateByFilterOperation { /** documents matching this filter will be updated */ filter?: Record | null; /** partial document to apply */ document?: InternalDocument; } export interface InternalUpdateExistingOperation { /** documents to update */ documents?: InternalDocument[]; } export interface VersionedDocumentUpdateOperation { /** documents to create or overwrite */ documents?: InternalDocument[]; /** versioning mode to use instead of default */ versioningMode?: VersioningMode; } export declare enum VersioningMode { /** use default versioning mode agreed with search team */ DEFAULT = "DEFAULT", /** execute only if version is greater than existing */ GREATER_THAN = "GREATER_THAN", /** execute only if version is greater or equal to existing */ GREATER_OR_EQUAL = "GREATER_OR_EQUAL" } export interface VersionedDeleteByIdsOperation { /** ids with version of the documents to delete */ documentIds?: VersionedDocumentId[]; } export interface VersionedDocumentId { /** document id */ documentId?: string; /** document version */ version?: string; /** versioning mode to use instead of default */ versioningMode?: VersioningMode; } export interface UpdateDocumentsEvent extends UpdateDocumentsEventOperationOneOf { /** insert/update documents */ update?: DocumentUpdateOperation; /** delete by document ids */ deleteByIds?: V1DeleteByIdsOperation; /** delete documents matching filter */ deleteByFilter?: V1DeleteByFilterOperation; /** update documents matching filter */ updateByFilter?: UpdateByFilterOperation; /** update only existing documents */ updateExisting?: UpdateExistingOperation; /** application which owns documents */ appDefId?: string | null; /** type of the documents */ documentType?: string | null; /** language of the documents */ language?: string | null; /** site documents belong to */ msId?: string | null; } /** @oneof */ export interface UpdateDocumentsEventOperationOneOf { /** insert/update documents */ update?: DocumentUpdateOperation; /** delete by document ids */ deleteByIds?: V1DeleteByIdsOperation; /** delete documents matching filter */ deleteByFilter?: V1DeleteByFilterOperation; /** update documents matching filter */ updateByFilter?: UpdateByFilterOperation; /** update only existing documents */ updateExisting?: UpdateExistingOperation; } export interface DocumentUpdateOperation { /** documents to index or update */ documents?: IndexDocument[]; } export interface IndexDocument { /** data bag with non-searchable fields (url, image) */ payload?: DocumentPayload; /** what type of users should documents be visible to */ exposure?: Enum; /** document with mandatory fields (id, title, description) and with fields specific to the type of the document */ document?: Record | null; /** what member groups is the document exposed to. Used only with GROUP_PROTECTED exposure */ permittedMemberGroups?: string[]; /** if true SEO is disabled for this document */ seoHidden?: boolean | null; /** if true the page is a lightbox popup */ isPopup?: boolean | null; } export interface DocumentPayload { /** url of the page representing the document */ url?: string | null; /** image which represents the document */ documentImage?: DocumentImage; } export interface DocumentImage { /** the name of the image */ name?: string; /** the width of the image */ width?: number; /** the height of the image */ height?: number; } export declare enum Enum { /** Default value. Means that permission not set */ UNKNOWN = "UNKNOWN", /** Protected exposure. Exposed to members and owners */ PROTECTED = "PROTECTED", /** Private exposure. Exposed to owners */ PRIVATE = "PRIVATE", /** Public exposure. Visible to everyone */ PUBLIC = "PUBLIC", /** Used for partial updates, to state that exposure is not changing */ UNCHANGED = "UNCHANGED", /** Protected to members of permitted groups and owners */ GROUP_PROTECTED = "GROUP_PROTECTED" } export interface V1DeleteByIdsOperation { /** ids of the documents to delete */ documentIds?: string[]; } export interface V1DeleteByFilterOperation { /** documents matching this filter wil be deleted. only filterable documents defined in document_type can be used for filtering */ filter?: Record | null; } export interface UpdateByFilterOperation { /** documents matching this filter will be updated */ filter?: Record | null; /** partial document to apply */ document?: IndexDocument; } export interface UpdateExistingOperation { /** documents to update */ documents?: IndexDocument[]; } export interface Empty { } export interface MessageEnvelope { /** App instance ID. */ instanceId?: string | null; /** Event type. */ eventType?: string; /** The identification type and identity data. */ identity?: IdentificationData; /** Stringify payload. */ data?: string; } export interface IdentificationData extends IdentificationDataIdOneOf { /** ID of a site visitor that has not logged in to the site. */ anonymousVisitorId?: string; /** ID of a site visitor that has logged in to the site. */ memberId?: string; /** ID of a Wix user (site owner, contributor, etc.). */ wixUserId?: string; /** ID of an app. */ appId?: string; /** @readonly */ identityType?: WebhookIdentityType; } /** @oneof */ export interface IdentificationDataIdOneOf { /** ID of a site visitor that has not logged in to the site. */ anonymousVisitorId?: string; /** ID of a site visitor that has logged in to the site. */ memberId?: string; /** ID of a Wix user (site owner, contributor, etc.). */ wixUserId?: string; /** ID of an app. */ appId?: string; } export declare enum WebhookIdentityType { UNKNOWN = "UNKNOWN", ANONYMOUS_VISITOR = "ANONYMOUS_VISITOR", MEMBER = "MEMBER", WIX_USER = "WIX_USER", APP = "APP" } export interface SearchRequest { /** Text to search for. All searchable fields will be searched. */ query?: string | null; /** Document type of documents to search for. All document types are searched if not provided. */ documentType?: string | null; /** Fields to order by. */ ordering?: OrderingClauses; /** Paging parameters. */ paging?: SearchPaging; /** Language to search in. */ language?: string | null; /** Filter in platformized query language (for example {'field': {'$eq': 'value'}}) */ filter?: Record | null; /** The facets to retrieve. */ facets?: FacetClauses; /** Enable fuzzy search (eg. query 'kalvin clein' will match document with 'calvin klein' in title). */ fuzzy?: boolean | null; /** Highlight texts matching the query. Highlighted text will be wrapped with tag. Defaults to true if not provided. */ highlight?: boolean | null; /** Searchable fields to search in. If not provided, search is executed on all searchable fields in schema */ searchFields?: string[]; /** A list of fields to include in the result set. If not provided, all fields of schema will be included. */ fields?: string[]; /** The properties/overrides/experiments to enable for this request. Currently supported: `scoring_profile`, `result-format`. */ properties?: SearchProperty[]; /** Include seo hidden documents. Defaults to false if not provided. */ includeSeoHidden?: boolean | null; } export interface OrderingClauses { ordering?: OrderingClause[]; } export interface OrderingClause { fieldName?: string | null; direction?: Direction; } export declare enum Direction { UninitializedDirection = "UninitializedDirection", ASC = "ASC", DESC = "DESC" } export interface SearchPaging { /** * Number of items to skip in the result set. * @deprecated */ skip?: number; /** Number of items to fetch (effectively page size). */ limit?: number; /** Number of items to skip in the result set. */ offset?: number; } export interface FacetClauses { /** Each entry represents a single facet with parameters. */ clauses?: FacetClause[]; } export interface FacetClause extends FacetClauseClauseOneOf { term?: TermFacet; aggregation?: AggregationFacet; hierarchical?: HierarchicalFacet; } /** @oneof */ export interface FacetClauseClauseOneOf { term?: TermFacet; aggregation?: AggregationFacet; hierarchical?: HierarchicalFacet; } export declare enum Aggregation { MIN = "MIN", MAX = "MAX", SUM = "SUM" } export interface HierarchicalFacet extends HierarchicalFacetClauseOneOf { term?: TermFacet; aggregation?: AggregationFacet; nestedAggregation?: HierarchicalFacet; } /** @oneof */ export interface HierarchicalFacetClauseOneOf { term?: TermFacet; aggregation?: AggregationFacet; } export interface TermFacet { /** The name of the faceted attribute. */ name?: string; /** Limit the number of facet values returned. Default is 10. */ limit?: number | null; } export interface AggregationFacet { /** The name of the faceted attribute. */ name?: string; /** Aggregation type. */ aggregation?: Aggregation; } export interface SearchProperty { name?: string; value?: any; } export interface SearchResponse { /** Documents matching filter and query. */ documents?: Record[] | null; nextPage?: NextPageResponse; /** * Facets provide "counts in categories" view. For example searching for "Nike" would return * (Shoes, 5), (Socks, 2) indicating numbers for matching by each faceted field. */ facets?: FacetsResponse[]; } export interface NextPageResponse { /** Total number of items across all pages */ total?: number; /** The number of items to skip */ skip?: number; /** The number of items to retrieve in one page */ limit?: number; } export interface FacetsResponse extends FacetsResponseResponseOneOf { terms?: TermAggregationResponse; minAggregation?: MinAggregationResponse; maxAggregation?: MaxAggregationResponse; minMaxAggregation?: MinMaxAggregationResponse; hierarchicalAggregation?: HierarchicalAggregationResponse; sumAggregation?: SumAggregationResponse; } /** @oneof */ export interface FacetsResponseResponseOneOf { terms?: TermAggregationResponse; minAggregation?: MinAggregationResponse; maxAggregation?: MaxAggregationResponse; minMaxAggregation?: MinMaxAggregationResponse; hierarchicalAggregation?: HierarchicalAggregationResponse; sumAggregation?: SumAggregationResponse; } export interface FacetCountResponse { /** Facet field value (for example "Shoes", "Socks") */ facetValue?: string; /** Document count within the group */ count?: number; } export interface Value { value?: string; facets?: FacetsResponse; count?: number; } export interface TermAggregationResponse { /** Facet field (for example productCategory) */ facet?: string; /** Facet values and document counts */ facets?: FacetCountResponse[]; } export interface MinAggregationResponse { /** Facet field (for example productPrice) */ facet?: string; /** The minimum value across all documents */ minValue?: number | null; } export interface MaxAggregationResponse { /** Facet field (for example productPrice) */ facet?: string; /** The maximum value across all documents */ maxValue?: number | null; } export interface MinMaxAggregationResponse { /** Facet field (for example productPrice) */ facet?: string; /** The minimum value across all documents */ minValue?: number | null; /** The maximum value across all documents */ maxValue?: number | null; } export interface HierarchicalAggregationResponse { facet?: string; values?: Value[]; } export interface SumAggregationResponse { /** Facet field (for example productPrice) */ facet?: string; /** The sum value across all documents */ value?: number | null; } export interface FederatedSearchRequest { /** Query phrase to use. */ query?: string | null; /** Language to search in. */ language?: string | null; /** Limit of documents to return per document type. */ limit?: number | null; /** Enable fuzzy search (for example query 'kalvin clein' will match document with 'calvin klein' in title). */ fuzzy?: boolean | null; /** Highlight texts matching the query. Highlighted text will be wrapped with tag. Defaults to true if not provided. */ highlight?: boolean | null; /** Searchable fields to search in. If not provided, search is executed on all searchable fields in schemas */ searchFields?: string[]; /** Document types to search in. If not provided, search is executed on all document types enabled for the site */ documentTypes?: string[]; /** Include seo hidden documents. Defaults to false if not provided. */ includeSeoHidden?: boolean | null; /** The properties/overrides/experiments to enable for this request. Currently supported: `scoring_profile`, `result-format`. */ properties?: SearchProperty[]; } export interface FederatedSearchResponse { /** Search results from multiple indexes. */ results?: FederatedSearchDocuments[]; } export interface FederatedSearchDocuments { /** Document type of documents */ documentType?: string | null; /** Documents of document type */ documents?: Record[] | null; /** Total count of matching documents for document type */ total?: number; } export interface SuggestRequest { /** Text to search for. Fields configured in suggester configuration will be searched. */ query?: string | null; /** Document type of documents to search for. All document types are searched if not provided. */ documentType?: string | null; /** Fields to order by. */ ordering?: OrderingClauses; /** Number of suggested document to return. */ limit?: number; /** Language to search in. */ language?: string | null; /** Filter in platformized query language (for example {'field': {'$eq': 'value'}}) */ filter?: Record | null; /** Searchable fields to search in. If not provided, search is executed on all suggestable fields in schema */ searchFields?: string[]; /** A list of fields to include in the result set. If not provided, all fields of schema will be included. */ fields?: string[]; /** Include seo hidden documents. Defaults to false if not provided. */ includeSeoHidden?: boolean | null; /** The properties/overrides/experiments to enable for this request. Currently supported: `scoring_profile`, `result-format`. */ properties?: SearchProperty[]; } export interface SuggestResponse { /** Suggested documents. */ documents?: Record[] | null; } export interface FederatedSuggestRequest { /** Text to search for. Fields configured in suggester configuration will be searched. */ query?: string | null; /** Language to search in. */ language?: string | null; /** Number of suggested document to return per document type. */ limit?: number; /** Searchable fields to search in. If not provided, search is executed on all suggestable fields in schemas */ searchFields?: string[]; /** Document types to search in. If not provided, search is executed on all document types enabled for the site */ documentTypes?: string[]; /** Include seo hidden documents. Defaults to false if not provided. */ includeSeoHidden?: boolean | null; /** The properties/overrides/experiments to enable for this request. Currently supported: `scoring_profile`, `result-format`. */ properties?: SearchProperty[]; } export interface FederatedSuggestResponse { /** Suggest results from multiple indexes. */ results?: FederatedSuggestDocuments[]; } export interface FederatedSuggestDocuments { /** Document type of documents */ documentType?: string | null; /** Documents of document type */ documents?: Record[] | null; } export interface RelatedRequest { /** ID of the document to fetch related documents for. */ documentId?: string | null; /** Document type of the document. */ documentType?: string | null; /** Fields to order by. */ ordering?: OrderingClauses; /** Language to search in. */ language?: string | null; /** Filter in platformized query language (for example {'field': {'$eq': 'value'}}). */ filter?: Record | null; /** Searchable fields to compare documents by. If not provided, all searchable fields in schema are used */ searchFields?: string[]; /** A list of fields to include in the result set. If not provided, all fields of schema will be included. */ fields?: string[]; /** Number of related documents to return */ limit?: number; /** The properties/overrides/experiments to enable for this request. Currently supported: `scoring_profile`. */ properties?: SearchProperty[]; /** Include seo hidden documents. Defaults to false if not provided. */ includeSeoHidden?: boolean | null; } export interface RelatedResponse { /** Documents matching filter and query. */ documents?: Record[] | null; } export interface AutocompleteRequest { /** Query phrase to fetch completions for. */ query?: string | null; /** Document type to use to search for phrases. */ documentType?: string | null; /** Limit of phrases to fetch. */ limit?: number; /** Language to search in. */ language?: string | null; /** Filter in platfromized query language (for example {'field': {'$eq': 'value'}}) */ filter?: Record | null; /** Searchable fields to use for query completion. If not provided, all searchable fields in schema are used */ searchFields?: string[]; /** Include seo hidden documents. Defaults to false if not provided. */ includeSeoHidden?: boolean | null; } export interface AutocompleteResponse { /** Suggested phrases. */ values?: AutocompleteResponseValue[]; } export interface AutocompleteResponseValue { /** Suggested phrase. */ query?: string; } export interface FederatedAutocompleteRequest { /** Query phrase to fetch completions for. */ query?: string | null; /** Language to search in. */ language?: string | null; /** Number of queries to return per document type. */ limit?: number; /** Searchable fields to search in. If not provided, search is executed on all autocompletable fields in schemas */ searchFields?: string[]; /** Document types to autocomplete in. If not provided, autocomplete is executed on all document types enabled for the site */ documentTypes?: string[]; /** Include seo hidden documents. Defaults to false if not provided. */ includeSeoHidden?: boolean | null; } export interface FederatedAutocompleteResponse { /** Suggested phrases from multiple indexes */ results?: FederatedAutocompleteResults[]; } export interface FederatedAutocompleteResults { /** Document type of queries */ documentType?: string | null; /** Suggested phrases */ values?: AutocompleteResponseValue[]; } export interface TrendingRequest { documentTypes?: string[]; language?: string | null; /** Include seo hidden documents. Defaults to false if not provided. */ includeSeoHidden?: boolean | null; /** The properties/overrides/experiments to enable for this request. Currently supported: `scoring_profile`, `result-format`. */ properties?: SearchProperty[]; } export interface TrendingResponse { results?: TrendingItems[]; } export interface TrendingItems { documentType?: string; documents?: Record[] | null; } interface NextPageResponseNonNullableFields { total: number; skip: number; limit: number; } interface FacetCountResponseNonNullableFields { facetValue: string; count: number; } interface TermAggregationResponseNonNullableFields { facet: string; facets: FacetCountResponseNonNullableFields[]; } interface MinAggregationResponseNonNullableFields { facet: string; } interface MaxAggregationResponseNonNullableFields { facet: string; } interface MinMaxAggregationResponseNonNullableFields { facet: string; } interface ValueNonNullableFields { value: string; facets?: FacetsResponseNonNullableFields; count: number; } interface HierarchicalAggregationResponseNonNullableFields { facet: string; values: ValueNonNullableFields[]; } interface SumAggregationResponseNonNullableFields { facet: string; } interface FacetsResponseNonNullableFields { terms?: TermAggregationResponseNonNullableFields; minAggregation?: MinAggregationResponseNonNullableFields; maxAggregation?: MaxAggregationResponseNonNullableFields; minMaxAggregation?: MinMaxAggregationResponseNonNullableFields; hierarchicalAggregation?: HierarchicalAggregationResponseNonNullableFields; sumAggregation?: SumAggregationResponseNonNullableFields; } export interface SearchResponseNonNullableFields { nextPage?: NextPageResponseNonNullableFields; facets: FacetsResponseNonNullableFields[]; } interface FederatedSearchDocumentsNonNullableFields { total: number; } export interface FederatedSearchResponseNonNullableFields { results: FederatedSearchDocumentsNonNullableFields[]; } interface AutocompleteResponseValueNonNullableFields { query: string; } export interface AutocompleteResponseNonNullableFields { values: AutocompleteResponseValueNonNullableFields[]; } interface FederatedAutocompleteResultsNonNullableFields { values: AutocompleteResponseValueNonNullableFields[]; } export interface FederatedAutocompleteResponseNonNullableFields { results: FederatedAutocompleteResultsNonNullableFields[]; } interface TrendingItemsNonNullableFields { documentType: string; } export interface TrendingResponseNonNullableFields { results: TrendingItemsNonNullableFields[]; } /** * Executes a regular search query. * If you are unsure, this is likely the search method you want to used. * @public * @documentationMaturity preview */ export declare function search(options?: SearchOptions): Promise; export interface SearchOptions { /** Text to search for. All searchable fields will be searched. */ query?: string | null; /** Document type of documents to search for. All document types are searched if not provided. */ documentType?: string | null; /** Fields to order by. */ ordering?: OrderingClauses; /** Paging parameters. */ paging?: SearchPaging; /** Language to search in. */ language?: string | null; /** Filter in platformized query language (for example {'field': {'$eq': 'value'}}) */ filter?: Record | null; /** The facets to retrieve. */ facets?: FacetClauses; /** Enable fuzzy search (eg. query 'kalvin clein' will match document with 'calvin klein' in title). */ fuzzy?: boolean | null; /** Highlight texts matching the query. Highlighted text will be wrapped with tag. Defaults to true if not provided. */ highlight?: boolean | null; /** Searchable fields to search in. If not provided, search is executed on all searchable fields in schema */ searchFields?: string[]; /** A list of fields to include in the result set. If not provided, all fields of schema will be included. */ fields?: string[]; /** The properties/overrides/experiments to enable for this request. Currently supported: `scoring_profile`, `result-format`. */ properties?: SearchProperty[]; /** Include seo hidden documents. Defaults to false if not provided. */ includeSeoHidden?: boolean | null; } /** * Searches in multiple document types at once. * @public * @documentationMaturity preview */ export declare function federatedSearch(options?: FederatedSearchOptions): Promise; export interface FederatedSearchOptions { /** Query phrase to use. */ query?: string | null; /** Language to search in. */ language?: string | null; /** Limit of documents to return per document type. */ limit?: number | null; /** Enable fuzzy search (for example query 'kalvin clein' will match document with 'calvin klein' in title). */ fuzzy?: boolean | null; /** Highlight texts matching the query. Highlighted text will be wrapped with tag. Defaults to true if not provided. */ highlight?: boolean | null; /** Searchable fields to search in. If not provided, search is executed on all searchable fields in schemas */ searchFields?: string[]; /** Document types to search in. If not provided, search is executed on all document types enabled for the site */ documentTypes?: string[]; /** Include seo hidden documents. Defaults to false if not provided. */ includeSeoHidden?: boolean | null; /** The properties/overrides/experiments to enable for this request. Currently supported: `scoring_profile`, `result-format`. */ properties?: SearchProperty[]; } /** * Executes search query to fetch suggested items. Unlike search query suggest will match * partial phrases (for example "blu" will match documents containing "blue", "blues" and "blunt"). * Phrase needs to be at least 3 symbols long. Suggestions can also perform optimisations in search * results and generally do not guarantee the same level of quality as regular Search endpoint. * @public * @documentationMaturity preview */ export declare function suggest(options?: SuggestOptions): Promise; export interface SuggestOptions { /** Text to search for. Fields configured in suggester configuration will be searched. */ query?: string | null; /** Document type of documents to search for. All document types are searched if not provided. */ documentType?: string | null; /** Fields to order by. */ ordering?: OrderingClauses; /** Number of suggested document to return. */ limit?: number; /** Language to search in. */ language?: string | null; /** Filter in platformized query language (for example {'field': {'$eq': 'value'}}) */ filter?: Record | null; /** Searchable fields to search in. If not provided, search is executed on all suggestable fields in schema */ searchFields?: string[]; /** A list of fields to include in the result set. If not provided, all fields of schema will be included. */ fields?: string[]; /** Include seo hidden documents. Defaults to false if not provided. */ includeSeoHidden?: boolean | null; /** The properties/overrides/experiments to enable for this request. Currently supported: `scoring_profile`, `result-format`. */ properties?: SearchProperty[]; } /** * Searches for suggestions in multiple document types at once. * @public * @documentationMaturity preview */ export declare function federatedSuggest(options?: FederatedSuggestOptions): Promise; export interface FederatedSuggestOptions { /** Text to search for. Fields configured in suggester configuration will be searched. */ query?: string | null; /** Language to search in. */ language?: string | null; /** Number of suggested document to return per document type. */ limit?: number; /** Searchable fields to search in. If not provided, search is executed on all suggestable fields in schemas */ searchFields?: string[]; /** Document types to search in. If not provided, search is executed on all document types enabled for the site */ documentTypes?: string[]; /** Include seo hidden documents. Defaults to false if not provided. */ includeSeoHidden?: boolean | null; /** The properties/overrides/experiments to enable for this request. Currently supported: `scoring_profile`, `result-format`. */ properties?: SearchProperty[]; } /** * Fetches documents similar to one single document. * This is typically used to implement "related to" scenarios (for example to fetch related store products when * consumer is already viewing one). * @public * @documentationMaturity preview */ export declare function related(options?: RelatedOptions): Promise; export interface RelatedOptions { /** ID of the document to fetch related documents for. */ documentId?: string | null; /** Document type of the document. */ documentType?: string | null; /** Fields to order by. */ ordering?: OrderingClauses; /** Language to search in. */ language?: string | null; /** Filter in platformized query language (for example {'field': {'$eq': 'value'}}). */ filter?: Record | null; /** Searchable fields to compare documents by. If not provided, all searchable fields in schema are used */ searchFields?: string[]; /** A list of fields to include in the result set. If not provided, all fields of schema will be included. */ fields?: string[]; /** Number of related documents to return */ limit?: number; /** The properties/overrides/experiments to enable for this request. Currently supported: `scoring_profile`. */ properties?: SearchProperty[]; /** Include seo hidden documents. Defaults to false if not provided. */ includeSeoHidden?: boolean | null; } /** * Provides phrase completion. For example "blu" could return "blue", "blues" and "blunt" as candidate phrases. This operation is resource heavy at index time and is reserved for special use cases. * @public * @documentationMaturity preview */ export declare function autocomplete(options?: AutocompleteOptions): Promise; export interface AutocompleteOptions { /** Query phrase to fetch completions for. */ query?: string | null; /** Document type to use to search for phrases. */ documentType?: string | null; /** Limit of phrases to fetch. */ limit?: number; /** Language to search in. */ language?: string | null; /** Filter in platfromized query language (for example {'field': {'$eq': 'value'}}) */ filter?: Record | null; /** Searchable fields to use for query completion. If not provided, all searchable fields in schema are used */ searchFields?: string[]; /** Include seo hidden documents. Defaults to false if not provided. */ includeSeoHidden?: boolean | null; } /** * Provides phrase completion from multiple document types at once * @public * @documentationMaturity preview */ export declare function federatedAutocomplete(options?: FederatedAutocompleteOptions): Promise; export interface FederatedAutocompleteOptions { /** Query phrase to fetch completions for. */ query?: string | null; /** Language to search in. */ language?: string | null; /** Number of queries to return per document type. */ limit?: number; /** Searchable fields to search in. If not provided, search is executed on all autocompletable fields in schemas */ searchFields?: string[]; /** Document types to autocomplete in. If not provided, autocomplete is executed on all document types enabled for the site */ documentTypes?: string[]; /** Include seo hidden documents. Defaults to false if not provided. */ includeSeoHidden?: boolean | null; } /** * Returns trending documents for given document types * @public * @documentationMaturity preview */ export declare function trending(options?: TrendingOptions): Promise; export interface TrendingOptions { documentTypes?: string[]; language?: string | null; /** Include seo hidden documents. Defaults to false if not provided. */ includeSeoHidden?: boolean | null; /** The properties/overrides/experiments to enable for this request. Currently supported: `scoring_profile`, `result-format`. */ properties?: SearchProperty[]; } export {};