/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. * @generated-id: 369943b6f366 */ import * as z from "zod/v3"; import { Document, Document$Outbound, Document$outboundSchema, } from "./document.js"; import { FacetFilterSet, FacetFilterSet$Outbound, FacetFilterSet$outboundSchema, } from "./facetfilterset.js"; import { SearchResultProminenceEnum, SearchResultProminenceEnum$outboundSchema, } from "./searchresultprominenceenum.js"; export type RecommendationsRequestOptions = { /** * Filter results to a single datasource name (e.g. gmail, slack). All results are returned if missing. */ datasourceFilter?: string | undefined; /** * Filter results to only those relevant to one or more datasources (e.g. jira, gdrive). All results are returned if missing. */ datasourcesFilter?: Array | undefined; /** * A list of facet filter sets that will be OR'ed together. */ facetFilterSets?: Array | undefined; context?: Document | undefined; /** * The types of prominence wanted in results returned. Default is any type. */ resultProminence?: Array | undefined; }; /** @internal */ export type RecommendationsRequestOptions$Outbound = { datasourceFilter?: string | undefined; datasourcesFilter?: Array | undefined; facetFilterSets?: Array | undefined; context?: Document$Outbound | undefined; resultProminence?: Array | undefined; }; /** @internal */ export const RecommendationsRequestOptions$outboundSchema: z.ZodType< RecommendationsRequestOptions$Outbound, z.ZodTypeDef, RecommendationsRequestOptions > = z.object({ datasourceFilter: z.string().optional(), datasourcesFilter: z.array(z.string()).optional(), facetFilterSets: z.array(FacetFilterSet$outboundSchema).optional(), context: Document$outboundSchema.optional(), resultProminence: z.array(SearchResultProminenceEnum$outboundSchema) .optional(), }); export function recommendationsRequestOptionsToJSON( recommendationsRequestOptions: RecommendationsRequestOptions, ): string { return JSON.stringify( RecommendationsRequestOptions$outboundSchema.parse( recommendationsRequestOptions, ), ); }