diff --git a/src/types/common.ts b/src/types/common.ts index a42888cd..dbeda043 100644 --- a/src/types/common.ts +++ b/src/types/common.ts @@ -154,6 +154,10 @@ export enum SandboxState { * Sandbox runtime has been deleted. */ STATE_DELETED = 'STATE_DELETED', + /** + * Sandbox runtime is stopping. + */ + STATE_STOPPING = 'STATE_STOPPING', } /** Protocol for port. Defaults to TCP if not specified. */ @@ -188,6 +192,22 @@ export enum DefaultContainerCategory { DEFAULT_CONTAINER_CATEGORY_SHELL_SANDBOX = 'DEFAULT_CONTAINER_CATEGORY_SHELL_SANDBOX', } +/** Output only. The state of the PSC service automation. */ +export enum PscAutomationState { + /** + * Should not be used. + */ + PSC_AUTOMATION_STATE_UNSPECIFIED = 'PSC_AUTOMATION_STATE_UNSPECIFIED', + /** + * The PSC service automation is successful. + */ + PSC_AUTOMATION_STATE_SUCCESSFUL = 'PSC_AUTOMATION_STATE_SUCCESSFUL', + /** + * The PSC service automation has failed. + */ + PSC_AUTOMATION_STATE_FAILED = 'PSC_AUTOMATION_STATE_FAILED', +} + /** Input only. Action to take on the source SandboxEnvironment after the snapshot is taken. This field is only used in CreateSandboxEnvironmentSnapshotRequest and it is not stored in the resource. */ export enum PostSnapshotAction { /** @@ -2268,7 +2288,7 @@ export declare interface SandboxEnvironmentSpecCodeExecutionEnvironment { /** The computer use environment with customized settings. */ export declare interface SandboxEnvironmentSpecComputerUseEnvironment {} -/** The shell environment with customized settings. */ +/** The shell environment. */ export declare interface SandboxEnvironmentSpecShellEnvironment {} /** The specification of a sandbox environment. */ @@ -2277,7 +2297,7 @@ export declare interface SandboxEnvironmentSpec { codeExecutionEnvironment?: SandboxEnvironmentSpecCodeExecutionEnvironment; /** Optional. The computer use environment. */ computerUseEnvironment?: SandboxEnvironmentSpecComputerUseEnvironment; - /** Optional. The shell environment. */ + /** Optional. The shell environment for executing shell commands and scripts. */ shellEnvironment?: SandboxEnvironmentSpecShellEnvironment; } @@ -2329,6 +2349,8 @@ export declare interface SandboxEnvironmentConnectionInfo { sandboxInternalIp?: string; /** Output only. The routing token for the SandboxEnvironment. */ routingToken?: string; + /** Output only. The name of the PSC-E service attachment created for private ingress to this SandboxEnvironment. Only populated when the template enables private ingress (see SandboxEnvironmentTemplate.ingress_control_config). VPC-SC customers use this to create a PSC endpoint in their VPC. */ + serviceAttachment?: string; } /** A sandbox environment. */ @@ -2559,9 +2581,9 @@ export declare interface SandboxEnvironmentTemplateDefaultContainerEnvironment { export declare interface SandboxEnvironmentTemplateEgressControlConfigDnsPeeringConfig { /** Required. The DNS name suffix of the zone being peered to, e.g., "my-internal-domain.corp.". Must end with a dot. */ domain?: string; - /** Required. The VPC network name in the target_project where the DNS zone specified by 'domain' is visible. */ + /** Required. The VPC network name in the target_project where the DNS zone specified by `domain` is visible. */ targetNetwork?: string; - /** Required. The project ID hosting the Cloud DNS managed zone that contains the 'domain'. The Vertex AI Service Agent requires the dns.peer role on this project. */ + /** Required. The project ID hosting the Cloud DNS managed zone that contains the `domain`. The Vertex AI Service Agent requires the dns.peer role on this project. */ targetProject?: string; } @@ -2573,7 +2595,7 @@ export declare interface SandboxEnvironmentTemplateEgressControlConfig { customerVpcNetwork?: string; /** Optional. DNS peering configurations that allow sandbox egress to resolve customer-internal domains via the customer VPC. */ dnsPeeringConfigs?: SandboxEnvironmentTemplateEgressControlConfigDnsPeeringConfig[]; - /** Optional. The name of the customer VPC NetworkAttachment used to draw a PSC interface IP into the customer VPC for sandbox egress. */ + /** Optional. The name of the customer VPC `NetworkAttachment` used to draw a PSC interface IP into the customer VPC for sandbox egress. */ networkAttachment?: string; } @@ -2607,6 +2629,36 @@ export declare interface CreateSandboxEnvironmentTemplateRequestParameters { config?: CreateSandboxEnvironmentTemplateConfig; } +/** PSC config that is used to automatically create PSC endpoints in the user projects. */ +export declare interface PSCAutomationConfig { + /** Output only. Error message if the PSC service automation failed. */ + errorMessage?: string; + /** Output only. Forwarding rule created by the PSC service automation. */ + forwardingRule?: string; + /** Output only. IP address rule created by the PSC service automation. */ + ipAddress?: string; + /** Required. The full name of the Google Compute Engine [network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks). [Format](https://cloud.google.com/compute/docs/reference/rest/v1/networks/get): `projects/{project}/global/networks/{network}`. */ + network?: string; + /** Required. Project id used to create forwarding rule. */ + projectId?: string; + /** Output only. The state of the PSC service automation. */ + state?: PscAutomationState; +} + +/** Represents configuration for private service connect. */ +export declare interface PrivateServiceConnectConfig { + /** Required. If true, expose the IndexEndpoint via private service connect. */ + enablePrivateServiceConnect?: boolean; + /** Optional. If set to true, enable secure private service connect with IAM authorization. Otherwise, private service connect will be done without authorization. Note latency will be slightly increased if authorization is enabled. */ + enableSecurePrivateServiceConnect?: boolean; + /** A list of Projects from which the forwarding rule will target the service attachment. */ + projectAllowlist?: string[]; + /** Optional. List of projects and networks where the PSC endpoints will be created. This field is used by Online Inference(Prediction) only. */ + pscAutomationConfigs?: PSCAutomationConfig[]; + /** Output only. The name of the generated service attachment resource. This is only populated if the endpoint is deployed with PrivateServiceConnect. */ + serviceAttachment?: string; +} + /** A sandbox environment template. */ export declare interface SandboxEnvironmentTemplate { /** Output only. The timestamp when this SandboxEnvironmentTemplate was created. */ @@ -2631,6 +2683,8 @@ export declare interface SandboxEnvironmentTemplate { | 'FAILED'; /** Output only. The timestamp when this SandboxEnvironmentTemplate was most recently updated. */ updateTime?: string; + /** Optional. The configuration for private ingress (PSC-E) of this template. When set, the sandbox router is exposed privately via a PSC service attachment so VPC-SC customers can connect from their VPC over a private endpoint instead of the public internet. The resulting service attachment is surfaced on `SandboxEnvironment.connection_info.service_attachment`. Only the PSC-E (service-attachment/ingress) portion of `PrivateServiceConnectConfig` applies here: `enable_private_service_connect` and `project_allowlist` (the consumer projects allowed to connect). The nested `psc_interface_config` (PSC-I / egress) is not used for sandbox ingress; sandbox egress is configured via `egress_control_config` instead. */ + ingressControlConfig?: PrivateServiceConnectConfig; } /** Operation that has an agent engine sandbox as a response. */ @@ -3623,6 +3677,8 @@ export declare interface SchemaPromptSpecAppBuilderData { framework?: Framework; /** Linked resources attached to the application by the user. */ linkedResources?: SchemaPromptSpecAppBuilderDataLinkedResource[]; + /** Optional. The Cloud Run regions in which the application is currently deployed. Used to rediscover and redeploy the app in the regions it already runs in, which may differ from the prompt's location. */ + deployedRegions?: string[]; } /** Defines data for an interaction prompt. */