@types/chrome 0.1.39 → 0.1.40

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.
Files changed (3) hide show
  1. chrome/README.md +1 -1
  2. chrome/index.d.ts +110 -74
  3. chrome/package.json +2 -2
chrome/README.md CHANGED
@@ -8,7 +8,7 @@ This package contains type definitions for chrome (https://developer.chrome.com/
8
8
  Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/chrome.
9
9
 
10
10
  ### Additional Details
11
- * Last updated: Fri, 03 Apr 2026 06:33:57 GMT
11
+ * Last updated: Wed, 08 Apr 2026 21:53:25 GMT
12
12
  * Dependencies: [@types/filesystem](https://npmjs.com/package/@types/filesystem), [@types/har-format](https://npmjs.com/package/@types/har-format)
13
13
 
14
14
  # Credits
chrome/index.d.ts CHANGED
@@ -9264,36 +9264,37 @@ declare namespace chrome {
9264
9264
 
9265
9265
  export interface ManifestBase {
9266
9266
  // Required
9267
+ /** An integer specifying the version of the manifest file format that your extension uses. */
9267
9268
  manifest_version: number;
9269
+ /** A string that identifies the extension in the Chrome Web Store, the install dialog, and the user's Chrome Extensions page (`chrome://extensions`). The maximum length is 75 characters. */
9268
9270
  name: string;
9271
+ /** A string that identifies the extension's version number. */
9269
9272
  version: string;
9270
9273
 
9271
9274
  // Recommended
9275
+ /** A string that defines the default language of an extension that supports multiple locales. Examples include "en" and "pt_BR". This key is required in localized extensions, and must not be used in extensions that aren't localized. */
9272
9276
  default_locale?: string | undefined;
9277
+ /** A string that describes the extension on both the Chrome Web Store and the user's extension management page. The maximum length is 132 characters. */
9273
9278
  description?: string | undefined;
9279
+ /** One or more icons that represent your extension. */
9274
9280
  icons?: ManifestIcons | undefined;
9275
9281
 
9276
9282
  // Optional
9277
- author?: {
9278
- email: string;
9279
- } | undefined;
9280
- background_page?: string | undefined;
9283
+ /** @deprecated As of February 2024, the `author` key is no longer supported by Chrome or the Chrome Web Store. If present, it's silently ignored. */
9284
+ author?: { email: string } | undefined;
9285
+ /** Defines overrides for selected Chrome settings. */
9281
9286
  chrome_settings_overrides?: {
9282
9287
  homepage?: string | undefined;
9283
9288
  search_provider?: SearchProvider | undefined;
9284
9289
  startup_pages?: string[] | undefined;
9285
9290
  } | undefined;
9286
- chrome_ui_overrides?: {
9287
- bookmarks_ui?: {
9288
- remove_bookmark_shortcut?: boolean | undefined;
9289
- remove_button?: boolean | undefined;
9290
- } | undefined;
9291
- } | undefined;
9291
+ /** Defines overrides for default Chrome pages. */
9292
9292
  chrome_url_overrides?: {
9293
9293
  bookmarks?: string | undefined;
9294
9294
  history?: string | undefined;
9295
9295
  newtab?: string | undefined;
9296
9296
  } | undefined;
9297
+ /** Defines keyboard shortcuts within the extension. */
9297
9298
  commands?: {
9298
9299
  [name: string]: {
9299
9300
  suggested_key?: {
@@ -9311,38 +9312,30 @@ declare namespace chrome {
9311
9312
  matches?: string[] | undefined;
9312
9313
  permissions?: string[] | undefined;
9313
9314
  } | undefined;
9314
- content_scripts?:
9315
- | Array<{
9316
- matches?: string[] | undefined;
9317
- exclude_matches?: string[] | undefined;
9318
- css?: string[] | undefined;
9319
- js?: string[] | undefined;
9320
- run_at?: string | undefined;
9321
- all_frames?: boolean | undefined;
9322
- match_about_blank?: boolean | undefined;
9323
- include_globs?: string[] | undefined;
9324
- exclude_globs?: string[] | undefined;
9325
- }>
9326
- | undefined;
9327
9315
  converted_from_user_script?: boolean | undefined;
9316
+ /** Specifies a value for the Cross-Origin-Embedder-Policy HTTP header, which configures embedding of cross-origin resources in an extension page. */
9317
+ cross_origin_embedder_policy?: { value: string } | undefined;
9318
+ /** Specifies a value for the Cross-Origin-Opener-Policy HTTP header, which lets you ensure that a top-level extension page doesn't share a browsing context group with cross-origin documents. */
9319
+ cross_origin_opener_policy?: { value: string } | undefined;
9328
9320
  current_locale?: string | undefined;
9321
+ /** Defines static rules for the declarativeNetRequest API, which allows blocking and modifying of network requests. */
9322
+ declarative_net_request?: { rule_resources?: declarativeNetRequest.Ruleset[] } | undefined;
9323
+ /** Defines pages that use the DevTools APIs. */
9329
9324
  devtools_page?: string | undefined;
9330
9325
  event_rules?:
9331
9326
  | Array<{
9332
9327
  event?: string | undefined;
9333
- actions?:
9334
- | Array<{
9335
- type: string;
9336
- }>
9337
- | undefined;
9328
+ actions?: Array<{ type: string }> | undefined;
9338
9329
  conditions?: chrome.declarativeContent.PageStateMatcherProperties[] | undefined;
9339
9330
  }>
9340
9331
  | undefined;
9332
+ /** Specifies what other pages and extensions can connect to your extensions. */
9341
9333
  externally_connectable?: {
9342
9334
  ids?: string[] | undefined;
9343
9335
  matches?: string[] | undefined;
9344
9336
  accepts_tls_channel_id?: boolean | undefined;
9345
9337
  } | undefined;
9338
+ /** Provides access to the fileBrowserHandler API, which lets extensions access the ChromeOS file browser. */
9346
9339
  file_browser_handlers?:
9347
9340
  | Array<{
9348
9341
  id?: string | undefined;
@@ -9350,35 +9343,44 @@ declare namespace chrome {
9350
9343
  file_filters?: string[] | undefined;
9351
9344
  }>
9352
9345
  | undefined;
9346
+ /** Allows access to the fileSystemProvider API, which lets extensions create file systems that ChromeOS can use. */
9353
9347
  file_system_provider_capabilities?: {
9348
+ /** Whether configuring via onConfigureRequested is supported. By default: false. */
9354
9349
  configurable?: boolean | undefined;
9350
+ /** Whether setting watchers and notifying about changes is supported. By default: false. */
9355
9351
  watchable?: boolean | undefined;
9352
+ /** Whether multiple (more than one) mounted file systems are supported. By default: false. */
9356
9353
  multiple_mounts?: boolean | undefined;
9357
- source?: string | undefined;
9354
+ /** Files app uses above information in order to render related UI elements appropriately. For example, if `configurable` is set to true, then a menu item for configuring volumes will be rendered. Similarly, if `multiple_mounts` is set to true, then Files app will allow to add more than one mount points from the UI. If `watchable` is false, then a refresh button will be rendered. Note, that if possible you should add support for watchers, so changes on the file system can be reflected immediately and automatically. */
9355
+ source: "file" | "device" | "network";
9358
9356
  } | undefined;
9357
+ /** string specifying a URL for the extension's homepage. If this is undefined, the homepage defaults to the extension's Chrome Web Store page. This field is particularly useful if you host the extension on your own site. */
9359
9358
  homepage_url?: string | undefined;
9359
+ /** Allows resources to be imported into the extension. */
9360
9360
  import?:
9361
9361
  | Array<{
9362
9362
  id: string;
9363
9363
  minimum_version?: string | undefined;
9364
9364
  }>
9365
9365
  | undefined;
9366
- export?: {
9367
- whitelist?: string[] | undefined;
9368
- } | undefined;
9369
- incognito?: string | undefined;
9366
+ /** Allows resources to be exported from the extension. */
9367
+ export?: { allowlist?: string[] | undefined } | undefined;
9368
+ /** Defines how the extension behaves in incognito mode. */
9369
+ incognito?: "spanning" | "split" | "not_allowed" | undefined;
9370
+ /** Allows the use of the Input Method Editor API. */
9370
9371
  input_components?:
9371
9372
  | Array<{
9372
- name?: string | undefined;
9373
- type?: string | undefined;
9373
+ name: string;
9374
9374
  id?: string | undefined;
9375
- description?: string | undefined;
9376
9375
  language?: string[] | string | undefined;
9377
- layouts?: string[] | undefined;
9378
- indicator?: string | undefined;
9376
+ layouts?: string[] | string | undefined;
9377
+ input_view?: string | undefined;
9378
+ options_page?: string | undefined;
9379
9379
  }>
9380
9380
  | undefined;
9381
+ /** Specifies your extension's ID for various development use cases. */
9381
9382
  key?: string | undefined;
9383
+ /** Defines the oldest Chrome version that can install your extension. The value must be a substring of an existing Chrome browser version string, such as "107" or "107.0.5304.87". Users with versions of Chrome older than the minimum version see a "Not compatible" warning in the Chrome Web Store, and are unable to install your extension. If you add this to an existing extension, users whose Chrome version is older won't receive automatic updates to your extension. This includes business users in ephemeral mode. */
9382
9384
  minimum_chrome_version?: string | undefined;
9383
9385
  nacl_modules?:
9384
9386
  | Array<{
@@ -9386,53 +9388,39 @@ declare namespace chrome {
9386
9388
  mime_type: string;
9387
9389
  }>
9388
9390
  | undefined;
9391
+ /** Allows the use of an OAuth 2.0 security ID. The value of this key must be an object with "client_id" and "scopes" properties. */
9389
9392
  oauth2?: {
9390
9393
  client_id: string;
9391
9394
  scopes?: string[] | undefined;
9392
9395
  } | undefined;
9393
9396
  offline_enabled?: boolean | undefined;
9394
- omnibox?: {
9395
- keyword: string;
9396
- } | undefined;
9397
+ /** Allows the extension to register a keyword in Chrome's address bar. */
9398
+ omnibox?: { keyword: string } | undefined;
9399
+ /** Specifies a path to an options.html file for the extension to use as an options page. */
9397
9400
  options_page?: string | undefined;
9401
+ /** Specifies a path to an HTML file that lets a user change extension options from the Chrome Extensions page. */
9398
9402
  options_ui?: {
9399
- page?: string | undefined;
9400
- chrome_style?: boolean | undefined;
9401
- open_in_tab?: boolean | undefined;
9403
+ /** Path to the options page, relative to the extension's root. */
9404
+ page: string;
9405
+ /** Specify as `false` to declare an embedded options page. If `true`, the extension's options page will be opened in a new tab rather than embedded in `chrome://extensions`. */
9406
+ open_in_tab: boolean;
9402
9407
  } | undefined;
9403
- platforms?:
9404
- | Array<{
9405
- nacl_arch?: string | undefined;
9406
- sub_package_path: string;
9407
- }>
9408
- | undefined;
9409
- plugins?:
9410
- | Array<{
9411
- path: string;
9412
- }>
9413
- | undefined;
9408
+ /** Lists technologies required to use the extension. */
9414
9409
  requirements?: {
9415
- "3D"?: {
9416
- features?: string[] | undefined;
9417
- } | undefined;
9418
- plugins?: {
9419
- npapi?: boolean | undefined;
9420
- } | undefined;
9410
+ "3D"?: { features?: string[] | undefined } | undefined;
9411
+ /** @deprecated NPAPI Plugin support for extensions has been discontinued as of Chrome version 45 */
9412
+ plugins?: { npapi?: boolean | undefined } | undefined;
9421
9413
  } | undefined;
9414
+ /** Defines a set of extension pages that don't have access to extension APIs or direct access to non-sandboxed pages. */
9422
9415
  sandbox?: {
9423
9416
  pages: string[];
9424
9417
  content_security_policy?: string | undefined;
9425
9418
  } | undefined;
9419
+ /** A string containing a shortened version of the extension's name to be used when character space is limited. The maximum length is 12 characters. If this is undefined, a truncated version of the "name" key displays instead. */
9426
9420
  short_name?: string | undefined;
9427
- spellcheck?: {
9428
- dictionary_language?: string | undefined;
9429
- dictionary_locale?: string | undefined;
9430
- dictionary_format?: string | undefined;
9431
- dictionary_path?: string | undefined;
9432
- } | undefined;
9433
- storage?: {
9434
- managed_schema: string;
9435
- } | undefined;
9421
+ /** Declares a JSON schema for the managed storage area. */
9422
+ storage?: { managed_schema: string } | undefined;
9423
+ /** Registers the extension as a text to speech engine. */
9436
9424
  tts_engine?: {
9437
9425
  voices: Array<{
9438
9426
  voice_name: string;
@@ -9441,13 +9429,14 @@ declare namespace chrome {
9441
9429
  event_types?: string[] | undefined;
9442
9430
  }>;
9443
9431
  } | undefined;
9432
+ /** A string containing the URL of the extension's updates page. Use this key if you're hosting your extension outside the Chrome Web Store. */
9444
9433
  update_url?: string | undefined;
9434
+ /** A string describing the extension's version. Examples include "1.0 beta" and "build rc2". If this is unspecified, the "version" value displays on the extension management page instead. */
9445
9435
  version_name?: string | undefined;
9446
9436
  [key: string]: any;
9447
9437
  }
9448
9438
 
9449
9439
  export interface ManifestV2 extends ManifestBase {
9450
- // Required
9451
9440
  manifest_version: 2;
9452
9441
 
9453
9442
  // Pick one (or none)
@@ -9462,24 +9451,50 @@ declare namespace chrome {
9462
9451
  persistent?: boolean | undefined;
9463
9452
  }
9464
9453
  | undefined;
9454
+ /** Specifies JavaScript or CSS files to be used when the user opens certain web pages. */
9455
+ content_scripts?:
9456
+ | Array<{
9457
+ matches?: string[] | undefined;
9458
+ exclude_matches?: string[] | undefined;
9459
+ css?: string[] | undefined;
9460
+ js?: string[] | undefined;
9461
+ run_at?: string | undefined;
9462
+ all_frames?: boolean | undefined;
9463
+ match_about_blank?: boolean | undefined;
9464
+ include_globs?: string[] | undefined;
9465
+ exclude_globs?: string[] | undefined;
9466
+ }>
9467
+ | undefined;
9468
+ /** Defines restrictions on the scripts, styles, and other resources an extension can use. */
9465
9469
  content_security_policy?: string | undefined;
9470
+ /** Declares optional permissions for your extension. */
9466
9471
  optional_permissions?: (ManifestOptionalPermission | string)[] | undefined;
9472
+ /** Enables use of particular extension APIs. */
9467
9473
  permissions?: (ManifestPermission | string)[] | undefined;
9474
+ platforms?:
9475
+ | Array<{
9476
+ nacl_arch?: string | undefined;
9477
+ sub_package_path: string;
9478
+ }>
9479
+ | undefined;
9480
+ /** Defines files within the extension that can be accessed by web pages or other extensions. */
9468
9481
  web_accessible_resources?: string[] | undefined;
9469
9482
  }
9470
9483
 
9471
9484
  export interface ManifestV3 extends ManifestBase {
9472
- // Required
9473
9485
  manifest_version: 3;
9474
9486
 
9475
9487
  // Optional
9488
+ /** Defines the appearance and behavior of the extension's icon in the Google Toolbar. */
9476
9489
  action?: ManifestAction | undefined;
9490
+ /** Specifies the JavaScript file containing the extension's service worker, which acts as an event handler. */
9477
9491
  background?:
9478
9492
  | {
9479
9493
  service_worker: string;
9480
- type?: "module"; // If the service worker uses ES modules
9494
+ type?: "module";
9481
9495
  }
9482
9496
  | undefined;
9497
+ /** Specifies JavaScript or CSS files to be used when the user opens certain web pages. */
9483
9498
  content_scripts?:
9484
9499
  | Array<{
9485
9500
  matches?: string[] | undefined;
@@ -9494,14 +9509,35 @@ declare namespace chrome {
9494
9509
  world?: "ISOLATED" | "MAIN" | undefined;
9495
9510
  }>
9496
9511
  | undefined;
9512
+ /** Defines restrictions on the scripts, styles, and other resources an extension can use. */
9497
9513
  content_security_policy?: {
9498
9514
  extension_pages?: string;
9499
9515
  sandbox?: string;
9500
- };
9516
+ } | undefined;
9517
+ /** Specifies file types for ChromeOS extensions to handle. */
9518
+ file_handlers?:
9519
+ | Array<{
9520
+ /** Specifies an HTML file to show when a file is opened. The file must be within your extension. Processing the file, whether it's displayed or used in some other way, is done with JavaScript using appropriate web platform APIs. This code must be in a separate JavaScript file included via a `<script>` tag. */
9521
+ action: string;
9522
+ /** A user friendly description of the action. */
9523
+ name: string;
9524
+ /** The file types that can be processed by the page specified in "action". The items in the dictionary are a key/value pair where the key is a MIME type and the value is an array of file extensions. Only known MIME types are allowed for the key. Custom file types are allowed but the key for a custom type must be a known MIME type, and the mapping between the MIME type and the custom file type must be supported by the underlying operating system. */
9525
+ accept: { [mime_type: string]: string[] };
9526
+ /** Specifies whether multiple files should be opened in a single client or multiple clients. The default value is "single-client". */
9527
+ launch_type?: "multiple-clients" | "single-client" | undefined;
9528
+ }>
9529
+ | undefined;
9530
+ /** Lists the web pages your extension is allowed to interact with, defined using URL match patterns. User permission for these sites is requested at install time. */
9501
9531
  host_permissions?: string[] | undefined;
9532
+ /** Declares optional permissions for your extension. */
9502
9533
  optional_permissions?: ManifestOptionalPermission[] | undefined;
9534
+ /** Declares optional host permissions for your extension. */
9503
9535
  optional_host_permissions?: string[] | undefined;
9536
+ /** Enables use of particular extension APIs. */
9504
9537
  permissions?: ManifestPermission[] | undefined;
9538
+ /** Identifies an HTML file to display in a sidePanel. */
9539
+ side_panel?: { default_path: string } | undefined;
9540
+ /** Defines files within the extension that can be accessed by web pages or other extensions. */
9505
9541
  web_accessible_resources?:
9506
9542
  | Array<
9507
9543
  & {
chrome/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@types/chrome",
3
- "version": "0.1.39",
3
+ "version": "0.1.40",
4
4
  "description": "TypeScript definitions for chrome",
5
5
  "homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/chrome",
6
6
  "license": "MIT",
@@ -94,6 +94,6 @@
94
94
  "@types/har-format": "*"
95
95
  },
96
96
  "peerDependencies": {},
97
- "typesPublisherContentHash": "cc4b7880e79be5e7d9371832e77f1c91aa47682063b9d54a5e2e2b4055640aab",
97
+ "typesPublisherContentHash": "fd2522b1671848bcfa6826327996e9fd1bcb18b09b4986e50a662f0b75b92f91",
98
98
  "typeScriptVersion": "5.3"
99
99
  }