Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
66 changes: 61 additions & 5 deletions src/types/common.ts
Original file line number Diff line number Diff line change
Expand Up @@ -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. */
Expand Down Expand Up @@ -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 {
/**
Expand Down Expand Up @@ -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. */
Expand All @@ -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;
}

Expand Down Expand Up @@ -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. */
Expand Down Expand Up @@ -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;
}

Expand All @@ -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;
}

Expand Down Expand Up @@ -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. */
Expand All @@ -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. */
Expand Down Expand Up @@ -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. */
Expand Down
Loading