import {z} from 'zod' export type GoogleCloudAiplatformV1MemoryBankCustomizationConfigConsolidationConfig = {revisionsPerCandidateCount?: number | undefined}; export type GoogleCloudAiplatformV1AudioTranscriptionWordInfo = {endOffset?: unknown | undefined, startOffset?: unknown | undefined, word?: string | undefined}; export type GoogleCloudAiplatformV1AudioTranscription = {speakerLabel?: string | undefined, text?: string | undefined, words?: Array | undefined}; export type GoogleCloudAiplatformV1CodeExecutionResult = {id?: string | undefined, outcome?: ('OUTCOME_UNSPECIFIED' | 'OUTCOME_OK' | 'OUTCOME_FAILED' | 'OUTCOME_DEADLINE_EXCEEDED') | undefined, output?: string | undefined}; export type GoogleCloudAiplatformV1ExecutableCode = {code?: string | undefined, id?: string | undefined, language?: ('LANGUAGE_UNSPECIFIED' | 'PYTHON') | undefined}; export type GoogleCloudAiplatformV1FileData = {displayName?: string | undefined, fileUri?: string | undefined, mimeType?: string | undefined}; export type GoogleCloudAiplatformV1PartialArg = {boolValue?: boolean | undefined, jsonPath?: string | undefined, nullValue?: 'NULL_VALUE' | undefined, numberValue?: number | undefined, stringValue?: string | undefined, willContinue?: boolean | undefined}; export type GoogleCloudAiplatformV1FunctionCall = {args?: {[key: string]: unknown} | undefined, id?: string | undefined, name?: string | undefined, partialArgs?: Array | undefined, willContinue?: boolean | undefined}; export type GoogleCloudAiplatformV1FunctionResponseFileData = {displayName?: string | undefined, fileUri?: string | undefined, mimeType?: string | undefined}; export type GoogleCloudAiplatformV1FunctionResponseBlob = {data?: string | undefined, displayName?: string | undefined, mimeType?: string | undefined}; export type GoogleCloudAiplatformV1FunctionResponsePart = {fileData?: GoogleCloudAiplatformV1FunctionResponseFileData | undefined, inlineData?: GoogleCloudAiplatformV1FunctionResponseBlob | undefined}; export type GoogleCloudAiplatformV1FunctionResponse = {id?: string | undefined, name?: string | undefined, parts?: Array | undefined, response?: {[key: string]: unknown} | undefined, scheduling?: ('SCHEDULING_UNSPECIFIED' | 'SILENT' | 'WHEN_IDLE' | 'INTERRUPT') | undefined}; export type GoogleCloudAiplatformV1Blob = {data?: string | undefined, displayName?: string | undefined, mimeType?: string | undefined}; export type GoogleCloudAiplatformV1PartMediaResolution = {level?: ('MEDIA_RESOLUTION_UNSPECIFIED' | 'MEDIA_RESOLUTION_LOW' | 'MEDIA_RESOLUTION_MEDIUM' | 'MEDIA_RESOLUTION_HIGH' | 'MEDIA_RESOLUTION_ULTRA_HIGH') | undefined}; export type GoogleCloudAiplatformV1SpeechMetadata = {speaker?: string | undefined, style?: string | undefined}; export type GoogleCloudAiplatformV1VideoMetadata = {endOffset?: unknown | undefined, fps?: number | undefined, startOffset?: unknown | undefined}; export type GoogleCloudAiplatformV1Part = {audioTranscription?: GoogleCloudAiplatformV1AudioTranscription | undefined, codeExecutionResult?: GoogleCloudAiplatformV1CodeExecutionResult | undefined, executableCode?: GoogleCloudAiplatformV1ExecutableCode | undefined, fileData?: GoogleCloudAiplatformV1FileData | undefined, functionCall?: GoogleCloudAiplatformV1FunctionCall | undefined, functionResponse?: GoogleCloudAiplatformV1FunctionResponse | undefined, inlineData?: GoogleCloudAiplatformV1Blob | undefined, mediaResolution?: GoogleCloudAiplatformV1PartMediaResolution | undefined, speechMetadata?: GoogleCloudAiplatformV1SpeechMetadata | undefined, text?: string | undefined, thought?: boolean | undefined, thoughtSignature?: string | undefined, videoMetadata?: GoogleCloudAiplatformV1VideoMetadata | undefined}; export type GoogleCloudAiplatformV1Content = {parts?: Array | undefined, role?: string | undefined}; export type GoogleCloudAiplatformV1MemoryBankCustomizationConfigGenerateMemoriesExampleConversationSourceEvent = {content?: GoogleCloudAiplatformV1Content | undefined}; export type GoogleCloudAiplatformV1MemoryBankCustomizationConfigGenerateMemoriesExampleConversationSource = {events?: Array | undefined}; export type GoogleCloudAiplatformV1MemoryTopicId = {customMemoryTopicLabel?: string | undefined, managedMemoryTopic?: ('MANAGED_TOPIC_ENUM_UNSPECIFIED' | 'USER_PERSONAL_INFO' | 'USER_PREFERENCES' | 'KEY_CONVERSATION_DETAILS' | 'EXPLICIT_INSTRUCTIONS') | undefined}; export type GoogleCloudAiplatformV1MemoryBankCustomizationConfigGenerateMemoriesExampleGeneratedMemory = {fact?: string | undefined, topics?: Array | undefined}; export type GoogleCloudAiplatformV1MemoryBankCustomizationConfigGenerateMemoriesExample = {conversationSource?: GoogleCloudAiplatformV1MemoryBankCustomizationConfigGenerateMemoriesExampleConversationSource | undefined, generatedMemories?: Array | undefined}; export type GoogleCloudAiplatformV1MemoryBankCustomizationConfigMemoryTopicCustomMemoryTopic = {description?: string | undefined, label?: string | undefined}; export type GoogleCloudAiplatformV1MemoryBankCustomizationConfigMemoryTopicManagedMemoryTopic = {managedTopicEnum?: ('MANAGED_TOPIC_ENUM_UNSPECIFIED' | 'USER_PERSONAL_INFO' | 'USER_PREFERENCES' | 'KEY_CONVERSATION_DETAILS' | 'EXPLICIT_INSTRUCTIONS') | undefined}; export type GoogleCloudAiplatformV1MemoryBankCustomizationConfigMemoryTopic = {customMemoryTopic?: GoogleCloudAiplatformV1MemoryBankCustomizationConfigMemoryTopicCustomMemoryTopic | undefined, managedMemoryTopic?: GoogleCloudAiplatformV1MemoryBankCustomizationConfigMemoryTopicManagedMemoryTopic | undefined}; export type GoogleCloudAiplatformV1MemoryBankCustomizationConfig = {consolidationConfig?: GoogleCloudAiplatformV1MemoryBankCustomizationConfigConsolidationConfig | undefined, disableNaturalLanguageMemories?: boolean | undefined, enableThirdPersonMemories?: boolean | undefined, generateMemoriesExamples?: Array | undefined, memoryTopics?: Array | undefined, scopeKeys?: Array | undefined}; export type GoogleCloudAiplatformV1MemoryGenerationTriggerConfigGenerationTriggerRule = {eventCount?: number | undefined, fixedInterval?: unknown | undefined, idleDuration?: unknown | undefined, overlapEventCount?: number | undefined}; export type GoogleCloudAiplatformV1MemoryGenerationTriggerConfig = {generationRule?: GoogleCloudAiplatformV1MemoryGenerationTriggerConfigGenerationTriggerRule | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineContextSpecMemoryBankConfigGenerationConfig = {generationTriggerConfig?: GoogleCloudAiplatformV1MemoryGenerationTriggerConfig | undefined, model?: string | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineContextSpecMemoryBankConfigSimilaritySearchConfig = {embeddingModel?: string | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineContextSpecMemoryBankConfigTtlConfigGranularTtlConfig = {createTtl?: unknown | undefined, generateCreatedTtl?: unknown | undefined, generateUpdatedTtl?: unknown | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineContextSpecMemoryBankConfigTtlConfig = {defaultTtl?: unknown | undefined, granularTtlConfig?: GoogleCloudAiplatformV1ReasoningEngineContextSpecMemoryBankConfigTtlConfigGranularTtlConfig | undefined, memoryRevisionDefaultTtl?: unknown | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineContextSpecMemoryBankConfig = {customizationConfigs?: Array | undefined, disableMemoryRevisions?: boolean | undefined, generationConfig?: GoogleCloudAiplatformV1ReasoningEngineContextSpecMemoryBankConfigGenerationConfig | undefined, similaritySearchConfig?: GoogleCloudAiplatformV1ReasoningEngineContextSpecMemoryBankConfigSimilaritySearchConfig | undefined, ttlConfig?: GoogleCloudAiplatformV1ReasoningEngineContextSpecMemoryBankConfigTtlConfig | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineContextSpec = {memoryBankConfig?: GoogleCloudAiplatformV1ReasoningEngineContextSpecMemoryBankConfig | undefined}; export type GoogleCloudAiplatformV1EncryptionSpec = {kmsKeyName?: string | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineSpecBuildSpec = {serviceAccount?: string | undefined, workerPool?: string | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineSpecContainerSpec = {imageUri?: string | undefined, port?: number | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineSpecDeploymentSpecAgentGatewayConfigAgentToAnywhereConfig = {agentGateway?: string | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineSpecDeploymentSpecAgentGatewayConfigClientToAgentConfig = {agentGateway?: string | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineSpecDeploymentSpecAgentGatewayConfig = {agentToAnywhereConfig?: GoogleCloudAiplatformV1ReasoningEngineSpecDeploymentSpecAgentGatewayConfigAgentToAnywhereConfig | undefined, clientToAgentConfig?: GoogleCloudAiplatformV1ReasoningEngineSpecDeploymentSpecAgentGatewayConfigClientToAgentConfig | undefined}; export type GoogleCloudAiplatformV1EnvVar = {name?: string | undefined, value?: string | undefined}; export type GoogleCloudAiplatformV1KeepAliveProbeHttpGet = {path?: string | undefined, port?: number | undefined}; export type GoogleCloudAiplatformV1KeepAliveProbe = {httpGet?: GoogleCloudAiplatformV1KeepAliveProbeHttpGet | undefined, maxSeconds?: number | undefined}; export type GoogleCloudAiplatformV1DnsPeeringConfig = {domain?: string | undefined, targetNetwork?: string | undefined, targetProject?: string | undefined}; export type GoogleCloudAiplatformV1PscInterfaceConfig = {dnsPeeringConfigs?: Array | undefined, networkAttachment?: string | undefined}; export type GoogleCloudAiplatformV1SecretRef = {secret?: string | undefined, version?: string | undefined}; export type GoogleCloudAiplatformV1SecretEnvVar = {name?: string | undefined, secretRef?: GoogleCloudAiplatformV1SecretRef | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineSpecDeploymentSpec = {agentGatewayConfig?: GoogleCloudAiplatformV1ReasoningEngineSpecDeploymentSpecAgentGatewayConfig | undefined, containerConcurrency?: number | undefined, env?: Array | undefined, keepAliveProbe?: GoogleCloudAiplatformV1KeepAliveProbe | undefined, maxInstances?: number | undefined, minInstances?: number | undefined, pscInterfaceConfig?: GoogleCloudAiplatformV1PscInterfaceConfig | undefined, resourceLimits?: {[key: string]: string} | undefined, secretEnv?: Array | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineSpecPackageSpec = {dependencyFilesGcsUri?: string | undefined, pickleObjectGcsUri?: string | undefined, pythonVersion?: string | undefined, requirementsGcsUri?: string | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecAgentConfigSourceAdkConfig = {jsonConfig?: {[key: string]: unknown} | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecInlineSource = {sourceArchive?: string | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecAgentConfigSource = {adkConfig?: GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecAgentConfigSourceAdkConfig | undefined, inlineSource?: GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecInlineSource | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecDeveloperConnectConfig = {dir?: string | undefined, gitRepositoryLink?: string | undefined, revision?: string | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecDeveloperConnectSource = {config?: GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecDeveloperConnectConfig | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecGitSource = {dir?: string | undefined, revision?: string | undefined, url?: string | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecImageSpec = {buildArgs?: {[key: string]: string} | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecPythonSpec = {entrypointModule?: string | undefined, entrypointObject?: string | undefined, requirementsFile?: string | undefined, version?: string | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpec = {agentConfigSource?: GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecAgentConfigSource | undefined, developerConnectSource?: GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecDeveloperConnectSource | undefined, gitSource?: GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecGitSource | undefined, imageSpec?: GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecImageSpec | undefined, inlineSource?: GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecInlineSource | undefined, pythonSpec?: GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpecPythonSpec | undefined}; export type GoogleCloudAiplatformV1ReasoningEngineSpec = {agentFramework?: string | undefined, buildSpec?: GoogleCloudAiplatformV1ReasoningEngineSpecBuildSpec | undefined, classMethods?: Array<{[key: string]: unknown}> | undefined, containerSpec?: GoogleCloudAiplatformV1ReasoningEngineSpecContainerSpec | undefined, deploymentSpec?: GoogleCloudAiplatformV1ReasoningEngineSpecDeploymentSpec | undefined, effectiveIdentity?: string | undefined, identityType?: ('IDENTITY_TYPE_UNSPECIFIED' | 'SERVICE_ACCOUNT' | 'AGENT_IDENTITY') | undefined, packageSpec?: GoogleCloudAiplatformV1ReasoningEngineSpecPackageSpec | undefined, serviceAccount?: string | undefined, sourceCodeSpec?: GoogleCloudAiplatformV1ReasoningEngineSpecSourceCodeSpec | undefined}; export type GoogleCloudAiplatformV1ReasoningEngine = {contextSpec?: GoogleCloudAiplatformV1ReasoningEngineContextSpec | undefined, createTime?: unknown | undefined, description?: string | undefined, displayName?: string | undefined, encryptionSpec?: GoogleCloudAiplatformV1EncryptionSpec | undefined, etag?: string | undefined, labels?: {[key: string]: string} | undefined, name?: string | undefined, spec?: GoogleCloudAiplatformV1ReasoningEngineSpec | undefined, updateTime?: unknown | undefined}; export type PatchApiV1ReasoningEnginesReasoningEnginesIdArgs = {reasoningEnginesId: string, updateMask?: unknown | undefined, body: GoogleCloudAiplatformV1ReasoningEngine}; export type PatchApiV1ReasoningEnginesReasoningEnginesIdOptions = {baseUrl?: string | undefined, Oauth2?: string | undefined, Oauth2c?: string | undefined, fetch?: typeof fetch | undefined}; export const googleRpcStatus = z.object({code: z.number().int().optional(), details: z.array(z.record(z.string(), z.unknown())).optional(), message: z.string().optional()}); export const googleLongrunningOperation = z.object({done: z.boolean().optional(), error: googleRpcStatus.optional(), metadata: z.record(z.string(), z.unknown()).optional(), name: z.string().optional(), response: z.record(z.string(), z.unknown()).optional()}); export const validateResponse = async ( schema: { readonly '~standard': { readonly validate: (value: unknown) => ({ readonly value: Output; readonly issues?: undefined } | { readonly issues: ReadonlyArray<{ readonly message: string; readonly path?: ReadonlyArray | undefined }> }) | Promise<{ readonly value: Output; readonly issues?: undefined } | { readonly issues: ReadonlyArray<{ readonly message: string; readonly path?: ReadonlyArray | undefined }> }> } }, value: unknown ): Promise => { const result = await schema['~standard'].validate(value) if (result.issues !== undefined) { const detail = result.issues .map(({ message, path }) => path?.length ? `${path.map((segment) => String(typeof segment === 'object' ? segment.key : segment)).join('.')}: ${message}` : message ) .join('; ') throw new Error(`Response does not match the schema: ${detail}`, { cause: { issues: result.issues } }) } return result.value }; /** * Updates a reasoning engine. * * PATCH /v1/reasoningEngines/{reasoningEnginesId} * * Also accepts auth: Oauth2 + Oauth2c */ export const patchApiV1ReasoningEnginesReasoningEnginesId = async (args: PatchApiV1ReasoningEnginesReasoningEnginesIdArgs, options?: PatchApiV1ReasoningEnginesReasoningEnginesIdOptions) => { const {baseUrl = "https://aiplatform.googleapis.com", fetch: fetchFn = fetch, Oauth2, Oauth2c} = options ?? {} const query = new URLSearchParams() const headers = new Headers() headers.set('content-type', "application/json") headers.set('accept', "application/json") if (args.updateMask != null) query.append("updateMask", String(args.updateMask)) if (Oauth2 !== undefined) headers.set('authorization', `Bearer ${Oauth2}`) if (Oauth2c !== undefined) headers.set('authorization', `Bearer ${Oauth2c}`) const url = `${baseUrl.replace(/\/+$/, '')}/v1/reasoningEngines/${encodeURIComponent(String(args.reasoningEnginesId))}${query.size > 0 ? `?${query}` : ''}` const res = await fetchFn(url, {method: "PATCH", headers, body: JSON.stringify(args.body)}) if (!res.ok) throw new Error(`Request failed with status ${res.status}`, {cause: {status: res.status, body: await res.text()}}) return validateResponse(googleLongrunningOperation, await res.json()) };