/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod/v3"; import { remap as remap$ } from "../../lib/primitives.js"; import { safeParse } from "../../lib/schemas.js"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; import { MediaModeParam, MediaModeParam$inboundSchema, MediaModeParam$Outbound, MediaModeParam$outboundSchema, } from "./mediamodeparam.js"; import { PublicBackblazeConnection, PublicBackblazeConnection$inboundSchema, PublicBackblazeConnection$Outbound, PublicBackblazeConnection$outboundSchema, } from "./publicbackblazeconnection.js"; import { PublicFreshdeskConnection, PublicFreshdeskConnection$inboundSchema, PublicFreshdeskConnection$Outbound, PublicFreshdeskConnection$outboundSchema, } from "./publicfreshdeskconnection.js"; import { PublicGCSConnection, PublicGCSConnection$inboundSchema, PublicGCSConnection$Outbound, PublicGCSConnection$outboundSchema, } from "./publicgcsconnection.js"; import { PublicIntercomConnection, PublicIntercomConnection$inboundSchema, PublicIntercomConnection$Outbound, PublicIntercomConnection$outboundSchema, } from "./publicintercomconnection.js"; import { PublicS3CompatibleConnection, PublicS3CompatibleConnection$inboundSchema, PublicS3CompatibleConnection$Outbound, PublicS3CompatibleConnection$outboundSchema, } from "./publics3compatibleconnection.js"; import { PublicZendeskConnection, PublicZendeskConnection$inboundSchema, PublicZendeskConnection$Outbound, PublicZendeskConnection$outboundSchema, } from "./publiczendeskconnection.js"; export type PublicCreateConnectionMetadata = | string | number | number | boolean | Array; export type PublicCreateConnectionConnection = | PublicBackblazeConnection | PublicFreshdeskConnection | PublicGCSConnection | PublicIntercomConnection | PublicS3CompatibleConnection | PublicZendeskConnection; export type PublicCreateConnection = { partitionStrategy: MediaModeParam; partition?: string | null | undefined; pageLimit?: number | null | undefined; config?: { [k: string]: any } | null | undefined; /** * Metadata for the document. Keys must be strings. Values may be strings, numbers, booleans, or lists of strings. Numbers may be integers or floating point and will be converted to 64 bit floating point. 1000 total values are allowed. Each item in an array counts towards the total. The following keys are reserved for internal use: `document_id`, `document_type`, `document_source`, `document_name`, `document_uploaded_at`, `start_time`, `end_time`, `chunk_content_type`. */ metadata?: | { [k: string]: string | number | number | boolean | Array } | undefined; connection: | PublicBackblazeConnection | PublicFreshdeskConnection | PublicGCSConnection | PublicIntercomConnection | PublicS3CompatibleConnection | PublicZendeskConnection; }; /** @internal */ export const PublicCreateConnectionMetadata$inboundSchema: z.ZodType< PublicCreateConnectionMetadata, z.ZodTypeDef, unknown > = z.union([ z.string(), z.number().int(), z.number(), z.boolean(), z.array(z.string()), ]); /** @internal */ export type PublicCreateConnectionMetadata$Outbound = | string | number | number | boolean | Array; /** @internal */ export const PublicCreateConnectionMetadata$outboundSchema: z.ZodType< PublicCreateConnectionMetadata$Outbound, z.ZodTypeDef, PublicCreateConnectionMetadata > = z.union([ z.string(), z.number().int(), z.number(), z.boolean(), z.array(z.string()), ]); export function publicCreateConnectionMetadataToJSON( publicCreateConnectionMetadata: PublicCreateConnectionMetadata, ): string { return JSON.stringify( PublicCreateConnectionMetadata$outboundSchema.parse( publicCreateConnectionMetadata, ), ); } export function publicCreateConnectionMetadataFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => PublicCreateConnectionMetadata$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'PublicCreateConnectionMetadata' from JSON`, ); } /** @internal */ export const PublicCreateConnectionConnection$inboundSchema: z.ZodType< PublicCreateConnectionConnection, z.ZodTypeDef, unknown > = z.union([ PublicBackblazeConnection$inboundSchema, PublicFreshdeskConnection$inboundSchema, PublicGCSConnection$inboundSchema, PublicIntercomConnection$inboundSchema, PublicS3CompatibleConnection$inboundSchema, PublicZendeskConnection$inboundSchema, ]); /** @internal */ export type PublicCreateConnectionConnection$Outbound = | PublicBackblazeConnection$Outbound | PublicFreshdeskConnection$Outbound | PublicGCSConnection$Outbound | PublicIntercomConnection$Outbound | PublicS3CompatibleConnection$Outbound | PublicZendeskConnection$Outbound; /** @internal */ export const PublicCreateConnectionConnection$outboundSchema: z.ZodType< PublicCreateConnectionConnection$Outbound, z.ZodTypeDef, PublicCreateConnectionConnection > = z.union([ PublicBackblazeConnection$outboundSchema, PublicFreshdeskConnection$outboundSchema, PublicGCSConnection$outboundSchema, PublicIntercomConnection$outboundSchema, PublicS3CompatibleConnection$outboundSchema, PublicZendeskConnection$outboundSchema, ]); export function publicCreateConnectionConnectionToJSON( publicCreateConnectionConnection: PublicCreateConnectionConnection, ): string { return JSON.stringify( PublicCreateConnectionConnection$outboundSchema.parse( publicCreateConnectionConnection, ), ); } export function publicCreateConnectionConnectionFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => PublicCreateConnectionConnection$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'PublicCreateConnectionConnection' from JSON`, ); } /** @internal */ export const PublicCreateConnection$inboundSchema: z.ZodType< PublicCreateConnection, z.ZodTypeDef, unknown > = z.object({ partition_strategy: MediaModeParam$inboundSchema, partition: z.nullable(z.string()).optional(), page_limit: z.nullable(z.number().int()).optional(), config: z.nullable(z.record(z.any())).optional(), metadata: z.record( z.union([ z.string(), z.number().int(), z.number(), z.boolean(), z.array(z.string()), ]), ).optional(), connection: z.union([ PublicBackblazeConnection$inboundSchema, PublicFreshdeskConnection$inboundSchema, PublicGCSConnection$inboundSchema, PublicIntercomConnection$inboundSchema, PublicS3CompatibleConnection$inboundSchema, PublicZendeskConnection$inboundSchema, ]), }).transform((v) => { return remap$(v, { "partition_strategy": "partitionStrategy", "page_limit": "pageLimit", }); }); /** @internal */ export type PublicCreateConnection$Outbound = { partition_strategy: MediaModeParam$Outbound; partition?: string | null | undefined; page_limit?: number | null | undefined; config?: { [k: string]: any } | null | undefined; metadata?: | { [k: string]: string | number | number | boolean | Array } | undefined; connection: | PublicBackblazeConnection$Outbound | PublicFreshdeskConnection$Outbound | PublicGCSConnection$Outbound | PublicIntercomConnection$Outbound | PublicS3CompatibleConnection$Outbound | PublicZendeskConnection$Outbound; }; /** @internal */ export const PublicCreateConnection$outboundSchema: z.ZodType< PublicCreateConnection$Outbound, z.ZodTypeDef, PublicCreateConnection > = z.object({ partitionStrategy: MediaModeParam$outboundSchema, partition: z.nullable(z.string()).optional(), pageLimit: z.nullable(z.number().int()).optional(), config: z.nullable(z.record(z.any())).optional(), metadata: z.record( z.union([ z.string(), z.number().int(), z.number(), z.boolean(), z.array(z.string()), ]), ).optional(), connection: z.union([ PublicBackblazeConnection$outboundSchema, PublicFreshdeskConnection$outboundSchema, PublicGCSConnection$outboundSchema, PublicIntercomConnection$outboundSchema, PublicS3CompatibleConnection$outboundSchema, PublicZendeskConnection$outboundSchema, ]), }).transform((v) => { return remap$(v, { partitionStrategy: "partition_strategy", pageLimit: "page_limit", }); }); export function publicCreateConnectionToJSON( publicCreateConnection: PublicCreateConnection, ): string { return JSON.stringify( PublicCreateConnection$outboundSchema.parse(publicCreateConnection), ); } export function publicCreateConnectionFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => PublicCreateConnection$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'PublicCreateConnection' from JSON`, ); }