/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. * @generated-id: 14e83321e02c */ import * as z from "zod/v3"; import { ClosedEnum } from "../../types/enums.js"; import { AuthToken, AuthToken$Outbound, AuthToken$outboundSchema, } from "./authtoken.js"; import { SessionInfo, SessionInfo$Outbound, SessionInfo$outboundSchema, } from "./sessioninfo.js"; export const AutocompleteRequestResultType = { AdditionalDocument: "ADDITIONAL_DOCUMENT", App: "APP", BrowserHistory: "BROWSER_HISTORY", Datasource: "DATASOURCE", Document: "DOCUMENT", Entity: "ENTITY", Golink: "GOLINK", History: "HISTORY", ChatHistory: "CHAT_HISTORY", NewChat: "NEW_CHAT", Operator: "OPERATOR", OperatorValue: "OPERATOR_VALUE", Quicklink: "QUICKLINK", Suggestion: "SUGGESTION", } as const; export type AutocompleteRequestResultType = ClosedEnum< typeof AutocompleteRequestResultType >; export type AutocompleteRequest = { trackingToken?: string | undefined; sessionInfo?: SessionInfo | undefined; /** * Partially typed query. */ query?: string | undefined; /** * Filter results to only those relevant to one or more datasources (e.g. jira, gdrive). Results are unfiltered if missing. */ datasourcesFilter?: Array | undefined; /** * Filter to only return results relevant to the given datasource. */ datasource?: string | undefined; /** * Filter to only return results of the given type(s). All types may be returned if omitted. */ resultTypes?: Array | undefined; /** * Maximum number of results to be returned. If no value is provided, the backend will cap at 200. * * @remarks */ resultSize?: number | undefined; /** * Auth tokens which may be used for federated results. */ authTokens?: Array | undefined; }; /** @internal */ export const AutocompleteRequestResultType$outboundSchema: z.ZodNativeEnum< typeof AutocompleteRequestResultType > = z.nativeEnum(AutocompleteRequestResultType); /** @internal */ export type AutocompleteRequest$Outbound = { trackingToken?: string | undefined; sessionInfo?: SessionInfo$Outbound | undefined; query?: string | undefined; datasourcesFilter?: Array | undefined; datasource?: string | undefined; resultTypes?: Array | undefined; resultSize?: number | undefined; authTokens?: Array | undefined; }; /** @internal */ export const AutocompleteRequest$outboundSchema: z.ZodType< AutocompleteRequest$Outbound, z.ZodTypeDef, AutocompleteRequest > = z.object({ trackingToken: z.string().optional(), sessionInfo: SessionInfo$outboundSchema.optional(), query: z.string().optional(), datasourcesFilter: z.array(z.string()).optional(), datasource: z.string().optional(), resultTypes: z.array(AutocompleteRequestResultType$outboundSchema).optional(), resultSize: z.number().int().optional(), authTokens: z.array(AuthToken$outboundSchema).optional(), }); export function autocompleteRequestToJSON( autocompleteRequest: AutocompleteRequest, ): string { return JSON.stringify( AutocompleteRequest$outboundSchema.parse(autocompleteRequest), ); }