@google/genai 2.9.0 → 2.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/web/web.d.ts CHANGED
@@ -1031,7 +1031,7 @@ export declare interface BatchJob {
1031
1031
  outputInfo?: BatchJobOutputInfo;
1032
1032
  }
1033
1033
 
1034
- /** Config for `des` parameter. */
1034
+ /** Config for `dest` parameter. */
1035
1035
  export declare interface BatchJobDestination {
1036
1036
  /** Storage format of the output files. Must be one of:
1037
1037
  'jsonl', 'bigquery', 'vertex-dataset'.
@@ -1752,15 +1752,12 @@ declare type ComputerUse$ = ComputerUse_2;
1752
1752
  export declare interface ComputerUse {
1753
1753
  /** Required. The environment being operated. */
1754
1754
  environment?: Environment;
1755
- /** By default, predefined functions are included in the final model call.
1756
- Some of them can be explicitly excluded from being automatically included.
1757
- This can serve two purposes:
1758
- 1. Using a more restricted / different action space.
1759
- 2. Improving the definitions / instructions of predefined functions. */
1755
+ /** Optional. By default, [predefined functions](https://cloud.google.com/vertex-ai/generative-ai/docs/computer-use#supported-actions) are included in the final model call. Some of them can be explicitly excluded from being automatically included. This can serve two purposes: 1. Using a more restricted / different action space. 2. Improving the definitions / instructions of predefined functions. */
1760
1756
  excludedPredefinedFunctions?: string[];
1761
- /** Optional. Whether enable the prompt injection detection check on computer-use request.
1762
- */
1757
+ /** Optional. Enables the prompt injection detection check on computer-use request. */
1763
1758
  enablePromptInjectionDetection?: boolean;
1759
+ /** Optional. Disabled safety policies for computer use. This field is not supported in Vertex AI. */
1760
+ disabledSafetyPolicies?: SafetyPolicy[];
1764
1761
  }
1765
1762
 
1766
1763
  /**
@@ -1783,6 +1780,10 @@ declare type ComputerUse_2 = {
1783
1780
  * request.
1784
1781
  */
1785
1782
  enable_prompt_injection_detection?: boolean | undefined;
1783
+ /**
1784
+ * Optional. Disabled safety policies for computer use.
1785
+ */
1786
+ disabled_safety_policies?: Array<DisabledSafetyPolicy> | undefined;
1786
1787
  };
1787
1788
 
1788
1789
  /** Optional parameters for computing tokens. */
@@ -2935,6 +2936,8 @@ declare type DeleteWebhookRequest = {
2935
2936
  */
2936
2937
  declare type Disabled = "disabled";
2937
2938
 
2939
+ declare type DisabledSafetyPolicy = "financial_transactions" | "sensitive_data_modification" | "communication_tool" | "account_creation" | "data_modification" | "user_consent_management" | "legal_terms_and_agreements" | (string & {});
2940
+
2938
2941
  /** Statistics for distillation prompt dataset. These statistics do not include the responses sampled from the teacher model. This data type is not supported in Gemini API. */
2939
2942
  export declare interface DistillationDataStats {
2940
2943
  /** Output only. Statistics computed for the training dataset. */
@@ -3550,6 +3553,8 @@ declare type EnvironmentNetworkEgressAllowlist = Allowlist | Disabled;
3550
3553
 
3551
3554
  declare type Error$ = ErrorT;
3552
3555
 
3556
+ declare type Error$2 = Status;
3557
+
3553
3558
  declare type ErrorEvent$ = ErrorEvent_2;
3554
3559
 
3555
3560
  declare type ErrorEvent_2 = {
@@ -3845,7 +3850,7 @@ export declare class Files extends BaseModule {
3845
3850
  * file extension.
3846
3851
  * - For Blob object inputs, the `mimeType` will be set to the Blob's `type`
3847
3852
  * property.
3848
- * Somex eamples for file extension to mimeType mapping:
3853
+ * Some examples for file extension to mimeType mapping:
3849
3854
  * .txt -> text/plain
3850
3855
  * .json -> application/json
3851
3856
  * .jpg -> image/jpeg
@@ -5344,6 +5349,10 @@ declare type GenerationConfig_2 = {
5344
5349
  * @deprecated field: This will be removed in a future release, please migrate away from it as soon as possible.
5345
5350
  */
5346
5351
  image_config?: ImageConfig_2 | undefined;
5352
+ /**
5353
+ * Configuration options for video generation.
5354
+ */
5355
+ video_config?: VideoConfig | undefined;
5347
5356
  /**
5348
5357
  * Penalizes tokens that have already appeared in the generated
5349
5358
  *
@@ -7221,7 +7230,8 @@ export declare namespace Interactions {
7221
7230
  export type MCPServerToolCallStep = MCPServerToolCallStep$;
7222
7231
  export type MCPServerToolResultStep = MCPServerToolResultStep$;
7223
7232
  export type Model = Model$;
7224
- export type ModelOutputStep = ModelOutputStep$;
7233
+ export interface ModelOutputStep extends ModelOutputStep$ {
7234
+ }
7225
7235
  export interface PlaceCitation extends PlaceCitation$ {
7226
7236
  }
7227
7237
  export type SpeechConfig = SpeechConfig$;
@@ -7249,7 +7259,9 @@ export declare namespace Interactions {
7249
7259
  export interface Usage extends Usage$ {
7250
7260
  }
7251
7261
  export type UserInputStep = UserInputStep$;
7262
+ export type VideoConfig = VideoConfig$;
7252
7263
  export type VideoContent = VideoContent$;
7264
+ export type VideoResponseFormat = VideoResponseFormat$;
7253
7265
  export type WebhookConfig = WebhookConfig$;
7254
7266
  export namespace CodeExecutionCallStep {
7255
7267
  export type Arguments = Arguments$;
@@ -7306,6 +7318,9 @@ export declare namespace Interactions {
7306
7318
  export namespace InteractionStatusUpdate {
7307
7319
  export type Metadata = Metadata$4;
7308
7320
  }
7321
+ export namespace ModelOutputStep {
7322
+ export type Error = Error$2;
7323
+ }
7309
7324
  export namespace PlaceCitation {
7310
7325
  export type ReviewSnippet = ReviewSnippet$3;
7311
7326
  }
@@ -7391,6 +7406,7 @@ declare namespace interactions {
7391
7406
  CodeExecutionResultStep,
7392
7407
  CodeExecution,
7393
7408
  EnvironmentEnum,
7409
+ DisabledSafetyPolicy,
7394
7410
  ComputerUse_2 as ComputerUse,
7395
7411
  Content_2 as Content,
7396
7412
  CreateAgentInteractionResponseFormat,
@@ -7510,6 +7526,7 @@ declare namespace interactions {
7510
7526
  SourceType,
7511
7527
  Source,
7512
7528
  SpeechConfig_2 as SpeechConfig,
7529
+ Status,
7513
7530
  StepDeltaData,
7514
7531
  StepDeltaMetadata,
7515
7532
  StepDelta,
@@ -7546,10 +7563,15 @@ declare namespace interactions {
7546
7563
  Usage,
7547
7564
  UserInputStep,
7548
7565
  VertexAISearchConfig,
7566
+ Task,
7567
+ VideoConfig,
7549
7568
  VideoContentMimeType,
7550
7569
  VideoContent,
7551
7570
  VideoDeltaMimeType,
7552
7571
  VideoDelta,
7572
+ VideoResponseFormatDelivery,
7573
+ VideoResponseFormatAspectRatio,
7574
+ VideoResponseFormat,
7553
7575
  WebhookConfig_2 as WebhookConfig
7554
7576
  }
7555
7577
  }
@@ -8776,9 +8798,9 @@ export declare interface LiveServerSessionResumptionUpdate {
8776
8798
  resumable?: boolean;
8777
8799
  /** Index of last message sent by client that is included in state represented by this SessionResumptionToken. Only sent when `SessionResumptionConfig.transparent` is set.
8778
8800
 
8779
- Presence of this index allows users to transparently reconnect and avoid issue of losing some part of realtime audio input/video. If client wishes to temporarily disconnect (for example as result of receiving GoAway) they can do it without losing state by buffering messages sent since last `SessionResmumptionTokenUpdate`. This field will enable them to limit buffering (avoid keeping all requests in RAM).
8801
+ Presence of this index allows users to transparently reconnect and avoid issue of losing some part of realtime audio input/video. If client wishes to temporarily disconnect (for example as result of receiving GoAway) they can do it without losing state by buffering messages sent since last `SessionResumptionTokenUpdate`. This field will enable them to limit buffering (avoid keeping all requests in RAM).
8780
8802
 
8781
- Note: This should not be used for when resuming a session at some time later -- in those cases partial audio and video frames arelikely not needed. */
8803
+ Note: This should not be used for when resuming a session at some time later -- in those cases partial audio and video frames are likely not needed. */
8782
8804
  lastConsumedClientMessageIndex?: string;
8783
8805
  }
8784
8806
 
@@ -9240,6 +9262,18 @@ declare type ModelOutputStep$ = ModelOutputStep;
9240
9262
  declare type ModelOutputStep = {
9241
9263
  type: "model_output";
9242
9264
  content?: Array<Content_2> | undefined;
9265
+ /**
9266
+ * The `Status` type defines a logical error model that is suitable for
9267
+ *
9268
+ * @remarks
9269
+ * different programming environments, including REST APIs and RPC APIs. It is
9270
+ * used by [gRPC](https://github.com/grpc). Each `Status` message contains
9271
+ * three pieces of data: error code, error message, and error details.
9272
+ *
9273
+ * You can find out more about this error model and how to work with it in the
9274
+ * [API Design Guide](https://cloud.google.com/apis/design/errors).
9275
+ */
9276
+ error?: Status | undefined;
9243
9277
  };
9244
9278
 
9245
9279
  export declare class Models extends BaseModule {
@@ -9313,7 +9347,7 @@ export declare class Models extends BaseModule {
9313
9347
  * To maintain backward compatibility, we move the data that was treated as
9314
9348
  * JSON schema from the responseSchema field to the responseJsonSchema field.
9315
9349
  */
9316
- private maybeMoveToResponseJsonSchem;
9350
+ private maybeMoveToResponseJsonSchema;
9317
9351
  /**
9318
9352
  * Makes an API request to generate content with a given model and yields the
9319
9353
  * response in chunks.
@@ -10841,7 +10875,7 @@ export declare enum ResourceScope {
10841
10875
  COLLECTION = "COLLECTION"
10842
10876
  }
10843
10877
 
10844
- declare type ResponseFormat = AudioResponseFormat | TextResponseFormat | ImageResponseFormat | {
10878
+ declare type ResponseFormat = AudioResponseFormat | TextResponseFormat | ImageResponseFormat | VideoResponseFormat | {
10845
10879
  [k: string]: any;
10846
10880
  };
10847
10881
 
@@ -11033,6 +11067,42 @@ export declare enum SafetyFilterLevel {
11033
11067
  BLOCK_NONE = "BLOCK_NONE"
11034
11068
  }
11035
11069
 
11070
+ /** SafetyPolicy */
11071
+ export declare enum SafetyPolicy {
11072
+ /**
11073
+ * Unspecified safety policy.
11074
+ */
11075
+ SAFETY_POLICY_UNSPECIFIED = "SAFETY_POLICY_UNSPECIFIED",
11076
+ /**
11077
+ * Safety policy for financial transactions.
11078
+ */
11079
+ FINANCIAL_TRANSACTIONS = "FINANCIAL_TRANSACTIONS",
11080
+ /**
11081
+ * Safety policy for sensitive data modification.
11082
+ */
11083
+ SENSITIVE_DATA_MODIFICATION = "SENSITIVE_DATA_MODIFICATION",
11084
+ /**
11085
+ * Safety policy for communication tools (e.g. Gmail, Chat, Meet).
11086
+ */
11087
+ COMMUNICATION_TOOL = "COMMUNICATION_TOOL",
11088
+ /**
11089
+ * Safety policy for account creation.
11090
+ */
11091
+ ACCOUNT_CREATION = "ACCOUNT_CREATION",
11092
+ /**
11093
+ * Safety policy for data modification.
11094
+ */
11095
+ DATA_MODIFICATION = "DATA_MODIFICATION",
11096
+ /**
11097
+ * Safety policy for user consent management.
11098
+ */
11099
+ USER_CONSENT_MANAGEMENT = "USER_CONSENT_MANAGEMENT",
11100
+ /**
11101
+ * Safety policy for legal terms and agreements.
11102
+ */
11103
+ LEGAL_TERMS_AND_AGREEMENTS = "LEGAL_TERMS_AND_AGREEMENTS"
11104
+ }
11105
+
11036
11106
  /** A safety rating for a piece of content. The safety rating contains the harm category and the harm probability level. */
11037
11107
  export declare interface SafetyRating {
11038
11108
  /** Output only. Indicates whether the content was blocked because of this rating. */
@@ -11661,6 +11731,48 @@ export declare enum StartSensitivity {
11661
11731
  START_SENSITIVITY_LOW = "START_SENSITIVITY_LOW"
11662
11732
  }
11663
11733
 
11734
+ /**
11735
+ * @license
11736
+ * Copyright 2026 Google LLC
11737
+ * SPDX-License-Identifier: Apache-2.0
11738
+ *
11739
+ * g3-prettier-ignore-file
11740
+ */
11741
+ /**
11742
+ * The `Status` type defines a logical error model that is suitable for
11743
+ *
11744
+ * @remarks
11745
+ * different programming environments, including REST APIs and RPC APIs. It is
11746
+ * used by [gRPC](https://github.com/grpc). Each `Status` message contains
11747
+ * three pieces of data: error code, error message, and error details.
11748
+ *
11749
+ * You can find out more about this error model and how to work with it in the
11750
+ * [API Design Guide](https://cloud.google.com/apis/design/errors).
11751
+ */
11752
+ declare type Status = {
11753
+ /**
11754
+ * The status code, which should be an enum value of google.rpc.Code.
11755
+ */
11756
+ code?: number | undefined;
11757
+ /**
11758
+ * A developer-facing error message, which should be in English. Any
11759
+ *
11760
+ * @remarks
11761
+ * user-facing error message should be localized and sent in the
11762
+ * google.rpc.Status.details field, or localized by the client.
11763
+ */
11764
+ message?: string | undefined;
11765
+ /**
11766
+ * A list of messages that carry the error details. There is a common set of
11767
+ *
11768
+ * @remarks
11769
+ * message types for APIs to use.
11770
+ */
11771
+ details?: Array<{
11772
+ [k: string]: any;
11773
+ }> | undefined;
11774
+ };
11775
+
11664
11776
  declare type Step$ = Step;
11665
11777
 
11666
11778
  /**
@@ -11723,6 +11835,14 @@ declare type StepStop$ = StepStop;
11723
11835
  declare type StepStop = {
11724
11836
  event_type: "step.stop";
11725
11837
  index: number;
11838
+ /**
11839
+ * Statistics on the interaction request's token usage.
11840
+ */
11841
+ usage?: Usage | undefined;
11842
+ /**
11843
+ * Statistics on the interaction request's token usage.
11844
+ */
11845
+ step_usage?: Usage | undefined;
11726
11846
  /**
11727
11847
  * The event_id token to be used to resume the interaction stream, from
11728
11848
  *
@@ -11935,6 +12055,22 @@ export declare interface SupervisedTuningSpec {
11935
12055
  validationDatasetUri?: string;
11936
12056
  }
11937
12057
 
12058
+ /**
12059
+ * @license
12060
+ * Copyright 2026 Google LLC
12061
+ * SPDX-License-Identifier: Apache-2.0
12062
+ *
12063
+ * g3-prettier-ignore-file
12064
+ */
12065
+ /**
12066
+ * Optional task mode for video generation. If not specified, the model
12067
+ *
12068
+ * @remarks
12069
+ * automatically determines the appropriate mode based on the provided text
12070
+ * prompt and input media.
12071
+ */
12072
+ declare type Task = "text_to_video" | "image_to_video" | "reference_to_video" | "edit" | (string & {});
12073
+
11938
12074
  export declare interface TestTableFile {
11939
12075
  comment?: string;
11940
12076
  testMethod?: string;
@@ -12244,9 +12380,7 @@ declare type Tool$ = Tool_2;
12244
12380
  export declare interface Tool {
12245
12381
  /** Optional. Retrieval tool type. System will always execute the provided retrieval tool(s) to get external knowledge to answer the prompt. Retrieval results are presented to the model for generation. This field is not supported in Gemini API. */
12246
12382
  retrieval?: Retrieval;
12247
- /** Optional. Tool to support the model interacting directly with the
12248
- computer. If enabled, it automatically populates computer-use specific
12249
- Function Declarations. */
12383
+ /** Optional. Tool to support the model interacting directly with the computer. If enabled, it automatically populates computer-use specific Function Declarations. */
12250
12384
  computerUse?: ComputerUse;
12251
12385
  /** Optional. FileSearch tool type. Tool to retrieve knowledge from Semantic Retrieval corpora. This field is not supported in Vertex AI. */
12252
12386
  fileSearch?: FileSearch;
@@ -12968,10 +13102,11 @@ declare namespace types {
12968
13102
  Language,
12969
13103
  FunctionResponseScheduling,
12970
13104
  Type,
12971
- Environment,
12972
13105
  AuthType,
12973
13106
  HttpElementLocation,
12974
13107
  ApiSpec,
13108
+ Environment,
13109
+ SafetyPolicy,
12975
13110
  PhishBlockThreshold,
12976
13111
  Behavior,
12977
13112
  DynamicRetrievalConfigMode,
@@ -13055,7 +13190,6 @@ declare namespace types {
13055
13190
  HttpOptions,
13056
13191
  Schema,
13057
13192
  ModelSelectionConfig,
13058
- ComputerUse,
13059
13193
  ApiKeyConfig,
13060
13194
  AuthConfigGoogleServiceAccountConfig,
13061
13195
  AuthConfigHttpBasicAuthConfig,
@@ -13079,6 +13213,7 @@ declare namespace types {
13079
13213
  RagRetrievalConfig,
13080
13214
  VertexRagStore,
13081
13215
  Retrieval,
13216
+ ComputerUse,
13082
13217
  FileSearch,
13083
13218
  WebSearch,
13084
13219
  ImageSearch,
@@ -14249,6 +14384,22 @@ export declare enum VideoCompressionQuality {
14249
14384
  LOSSLESS = "LOSSLESS"
14250
14385
  }
14251
14386
 
14387
+ declare type VideoConfig$ = VideoConfig;
14388
+
14389
+ /**
14390
+ * Configuration options for video generation.
14391
+ */
14392
+ declare type VideoConfig = {
14393
+ /**
14394
+ * Optional task mode for video generation. If not specified, the model
14395
+ *
14396
+ * @remarks
14397
+ * automatically determines the appropriate mode based on the provided text
14398
+ * prompt and input media.
14399
+ */
14400
+ task?: Task | undefined;
14401
+ };
14402
+
14252
14403
  declare type VideoContent$ = VideoContent;
14253
14404
 
14254
14405
  /**
@@ -14373,6 +14524,51 @@ export declare enum VideoOrientation {
14373
14524
  PORTRAIT = "PORTRAIT"
14374
14525
  }
14375
14526
 
14527
+ declare type VideoResponseFormat$ = VideoResponseFormat;
14528
+
14529
+ /**
14530
+ * Configuration for video output format.
14531
+ */
14532
+ declare type VideoResponseFormat = {
14533
+ type: "video";
14534
+ /**
14535
+ * The delivery mode for the video output.
14536
+ */
14537
+ delivery?: VideoResponseFormatDelivery | undefined;
14538
+ /**
14539
+ * The GCS URI to store the video output. Required for Vertex if delivery mode
14540
+ *
14541
+ * @remarks
14542
+ * is URI.
14543
+ */
14544
+ gcs_uri?: string | undefined;
14545
+ /**
14546
+ * The aspect ratio for the video output.
14547
+ */
14548
+ aspect_ratio?: VideoResponseFormatAspectRatio | undefined;
14549
+ /**
14550
+ * The duration for the video output.
14551
+ */
14552
+ duration?: string | undefined;
14553
+ };
14554
+
14555
+ /**
14556
+ * The aspect ratio for the video output.
14557
+ */
14558
+ declare type VideoResponseFormatAspectRatio = "16:9" | "9:16" | (string & {});
14559
+
14560
+ /**
14561
+ * @license
14562
+ * Copyright 2026 Google LLC
14563
+ * SPDX-License-Identifier: Apache-2.0
14564
+ *
14565
+ * g3-prettier-ignore-file
14566
+ */
14567
+ /**
14568
+ * The delivery mode for the video output.
14569
+ */
14570
+ declare type VideoResponseFormatDelivery = "inline" | "uri" | (string & {});
14571
+
14376
14572
  /**
14377
14573
  * Whether to include visualizations in the response.
14378
14574
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@google/genai",
3
- "version": "2.9.0",
3
+ "version": "2.10.0",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "main": "dist/node/index.mjs",