@types/chrome 0.0.287 → 0.0.289

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 +135 -141
  3. chrome/package.json +2 -2
chrome/README.md CHANGED
@@ -8,7 +8,7 @@ This package contains type definitions for chrome (http://developer.chrome.com/e
8
8
  Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/chrome.
9
9
 
10
10
  ### Additional Details
11
- * Last updated: Tue, 26 Nov 2024 07:33:59 GMT
11
+ * Last updated: Thu, 02 Jan 2025 21:02:18 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
@@ -21,53 +21,53 @@ declare namespace chrome {
21
21
  */
22
22
  export namespace accessibilityFeatures {
23
23
  /** **ChromeOS only.** Spoken feedback (text-to-speech). */
24
- export var spokenFeedback: chrome.types.ChromeSetting;
24
+ export var spokenFeedback: chrome.types.ChromeSetting<boolean>;
25
25
  /** **ChromeOS only.** Enlarged cursor. */
26
- export var largeCursor: chrome.types.ChromeSetting;
26
+ export var largeCursor: chrome.types.ChromeSetting<boolean>;
27
27
  /** **ChromeOS only.** Sticky modifier keys (like shift or alt). */
28
- export var stickyKeys: chrome.types.ChromeSetting;
28
+ export var stickyKeys: chrome.types.ChromeSetting<boolean>;
29
29
  /** **ChromeOS only.** High contrast rendering mode. */
30
- export var highContrast: chrome.types.ChromeSetting;
30
+ export var highContrast: chrome.types.ChromeSetting<boolean>;
31
31
  /** **ChromeOS only.** Full screen magnification. */
32
- export var screenMagnifier: chrome.types.ChromeSetting;
32
+ export var screenMagnifier: chrome.types.ChromeSetting<boolean>;
33
33
  /** **ChromeOS only.** Auto mouse click after mouse stops moving. */
34
- export var autoclick: chrome.types.ChromeSetting;
34
+ export var autoclick: chrome.types.ChromeSetting<boolean>;
35
35
  /** **ChromeOS only.** Virtual on-screen keyboard. */
36
- export var virtualKeyboard: chrome.types.ChromeSetting;
36
+ export var virtualKeyboard: chrome.types.ChromeSetting<boolean>;
37
37
  /**
38
38
  * **ChromeOS only.**
39
39
  * Caret highlighting.
40
40
  * @since Chrome 51
41
41
  */
42
- export var caretHighlight: chrome.types.ChromeSetting;
42
+ export var caretHighlight: chrome.types.ChromeSetting<boolean>;
43
43
  /**
44
44
  * **ChromeOS only.**
45
45
  * Cursor highlighting.
46
46
  * @since Chrome 51
47
47
  */
48
- export var cursorHighlight: chrome.types.ChromeSetting;
48
+ export var cursorHighlight: chrome.types.ChromeSetting<boolean>;
49
49
  /**
50
50
  * **ChromeOS only.**
51
51
  * Focus highlighting.
52
52
  * @since Chrome 51
53
53
  */
54
- export var focusHighlight: chrome.types.ChromeSetting;
54
+ export var focusHighlight: chrome.types.ChromeSetting<boolean>;
55
55
  /**
56
56
  * **ChromeOS only.**
57
57
  * Select-to-speak.
58
58
  * @since Chrome 51
59
59
  */
60
- export var selectToSpeak: chrome.types.ChromeSetting;
60
+ export var selectToSpeak: chrome.types.ChromeSetting<boolean>;
61
61
  /**
62
62
  * **ChromeOS only.**
63
63
  * Switch Access.
64
64
  * @since Chrome 51
65
65
  */
66
- export var switchAccess: chrome.types.ChromeSetting;
66
+ export var switchAccess: chrome.types.ChromeSetting<boolean>;
67
67
  /**
68
68
  * @since Chrome 42
69
69
  */
70
- export var animationPolicy: chrome.types.ChromeSetting;
70
+ export var animationPolicy: chrome.types.ChromeSetting<"allowed" | "once" | "none">;
71
71
  }
72
72
 
73
73
  ////////////////////
@@ -6678,72 +6678,49 @@ declare namespace chrome {
6678
6678
  */
6679
6679
  export namespace permissions {
6680
6680
  export interface Permissions {
6681
- /**
6682
- * Optional.
6683
- * List of named permissions (does not include hosts or origins). Anything listed here must appear in the optional_permissions list in the manifest.
6684
- */
6685
- permissions?: string[] | undefined;
6686
- /**
6687
- * Optional.
6688
- * List of origin permissions. Anything listed here must be a subset of a host that appears in the optional host permission list in the manifest (optional_permissions in MV2, optional_host_permissions in MV3). For example, if http://*.example.com/ or http://* appears in the optional permissions, you can request an origin of http://help.example.com/. Any path is ignored.
6689
- */
6690
- origins?: string[] | undefined;
6691
- }
6692
-
6693
- export interface PermissionsRemovedEvent {
6694
- addListener(
6695
- callback: (/** The permissions that have been removed*/ permissions: Permissions) => void,
6696
- ): void;
6697
- }
6698
-
6699
- export interface PermissionsAddedEvent {
6700
- addListener(callback: (/** The newly-acquired permissions*/ permissions: Permissions) => void): void;
6681
+ /** The list of host permissions, including those specified in the `optional_permissions` or `permissions` keys in the manifest, and those associated with [Content Scripts](https://developer.chrome.com/docs/extensions/develop/concepts/content-scripts). */
6682
+ origins?: string[];
6683
+ /** List of named permissions (does not include hosts or origins). */
6684
+ permissions?: chrome.runtime.ManifestPermissions[];
6701
6685
  }
6702
6686
 
6703
6687
  /**
6704
6688
  * Checks if the extension has the specified permissions.
6705
- * @return A Promise that resolves with boolean: True if the extension has the specified permissions.
6689
+ * Can return its result via Promise in Manifest V3 or later since Chrome 96.
6706
6690
  */
6707
6691
  export function contains(permissions: Permissions): Promise<boolean>;
6708
- /**
6709
- * Checks if the extension has the specified permissions.
6710
- * Parameter result: True if the extension has the specified permissions.
6711
- */
6712
6692
  export function contains(permissions: Permissions, callback: (result: boolean) => void): void;
6693
+
6713
6694
  /**
6714
6695
  * Gets the extension's current set of permissions.
6715
- * @return A Promise that resolves with Permissions object describing the extension's active permissions.
6696
+ * Can return its result via Promise in Manifest V3 or later since Chrome 96.
6716
6697
  */
6717
6698
  export function getAll(): Promise<Permissions>;
6718
- /**
6719
- * Gets the extension's current set of permissions.
6720
- */
6721
6699
  export function getAll(callback: (permissions: Permissions) => void): void;
6700
+
6722
6701
  /**
6723
- * Requests access to the specified permissions. These permissions must be defined in the optional_permissions or optional_host_permissions (MV3 only) fields of the manifest. If there are any problems requesting the permissions, runtime.lastError will be set.
6724
- * @return A Promise that resolves with boolean: True if the user granted the specified permissions.
6702
+ * Requests access to the specified permissions, displaying a prompt to the user if necessary.
6703
+ * These permissions must either be defined in the optional_permissions field of the manifest or be required permissions that were withheld by the user.
6704
+ * Paths on origin patterns will be ignored.
6705
+ * You can request subsets of optional origin permissions; for example, if you specify `*://*\/*` in the `optional_permissions` section of the manifest, you can request `http://example.com/`.
6706
+ * If there are any problems requesting the permissions, {@link runtime.lastError} will be set.
6707
+ * Can return its result via Promise in Manifest V3 or later since Chrome 96.
6725
6708
  */
6726
6709
  export function request(permissions: Permissions): Promise<boolean>;
6710
+ export function request(permissions: Permissions, callback: (granted: boolean) => void): void;
6711
+
6727
6712
  /**
6728
- * Requests access to the specified permissions. These permissions must be defined in the optional_permissions or optional_host_permissions (MV3 only) fields of the manifest. If there are any problems requesting the permissions, runtime.lastError will be set.
6729
- * Parameter granted: True if the user granted the specified permissions.
6730
- */
6731
- export function request(permissions: Permissions, callback?: (granted: boolean) => void): void;
6732
- /**
6733
- * Removes access to the specified permissions. If there are any problems removing the permissions, runtime.lastError will be set.
6734
- * @return A Promise that resolves with boolean: True if the permissions were removed.
6713
+ * Removes access to the specified permissions. If there are any problems removing the permissions, {@link runtime.lastError} will be set.
6714
+ * Can return its result via Promise in Manifest V3 or later since Chrome 96.
6735
6715
  */
6736
6716
  export function remove(permissions: Permissions): Promise<boolean>;
6737
- /**
6738
- * Removes access to the specified permissions. If there are any problems removing the permissions, runtime.lastError will be set.
6739
- * Parameter removed: True if the permissions were removed.
6740
- */
6741
- export function remove(permissions: Permissions, callback?: (removed: boolean) => void): void;
6717
+ export function remove(permissions: Permissions, callback: (removed: boolean) => void): void;
6742
6718
 
6743
6719
  /** Fired when access to permissions has been removed from the extension. */
6744
- export var onRemoved: PermissionsRemovedEvent;
6720
+ export const onRemoved: chrome.events.Event<(permissions: Permissions) => void>;
6721
+
6745
6722
  /** Fired when the extension acquires new permissions. */
6746
- export var onAdded: PermissionsAddedEvent;
6723
+ export const onAdded: chrome.events.Event<(permissions: Permissions) => void>;
6747
6724
  }
6748
6725
 
6749
6726
  ////////////////////
@@ -7237,46 +7214,49 @@ declare namespace chrome {
7237
7214
  * @since Chrome 18
7238
7215
  */
7239
7216
  export namespace privacy {
7217
+ /**
7218
+ * The IP handling policy of WebRTC.
7219
+ * @since Chrome 48
7220
+ */
7221
+ export type IPHandlingPolicy =
7222
+ | "default"
7223
+ | "default_public_and_private_interfaces"
7224
+ | "default_public_interface_only"
7225
+ | "disable_non_proxied_udp";
7226
+
7240
7227
  export interface Services {
7241
7228
  /** @since Chrome 20 */
7242
- spellingServiceEnabled: chrome.types.ChromeSetting;
7243
- searchSuggestEnabled: chrome.types.ChromeSetting;
7244
- instantEnabled: chrome.types.ChromeSetting;
7245
- alternateErrorPagesEnabled: chrome.types.ChromeSetting;
7246
- safeBrowsingEnabled: chrome.types.ChromeSetting;
7229
+ spellingServiceEnabled: chrome.types.ChromeSetting<boolean>;
7230
+ searchSuggestEnabled: chrome.types.ChromeSetting<boolean>;
7231
+ alternateErrorPagesEnabled: chrome.types.ChromeSetting<boolean>;
7232
+ safeBrowsingEnabled: chrome.types.ChromeSetting<boolean>;
7247
7233
  /** @deprecated since Chrome 70. Please use privacy.services.autofillAddressEnabled and privacy.services.autofillCreditCardEnabled. */
7248
- autofillEnabled: chrome.types.ChromeSetting;
7249
- translationServiceEnabled: chrome.types.ChromeSetting;
7234
+ autofillEnabled: chrome.types.ChromeSetting<boolean>;
7235
+ translationServiceEnabled: chrome.types.ChromeSetting<boolean>;
7250
7236
  /** @since Chrome 38 */
7251
- passwordSavingEnabled: chrome.types.ChromeSetting;
7237
+ passwordSavingEnabled: chrome.types.ChromeSetting<boolean>;
7252
7238
  /** @since Chrome 42 */
7253
- hotwordSearchEnabled: chrome.types.ChromeSetting;
7254
- /** @since Chrome 42 */
7255
- safeBrowsingExtendedReportingEnabled: chrome.types.ChromeSetting;
7239
+ safeBrowsingExtendedReportingEnabled: chrome.types.ChromeSetting<boolean>;
7256
7240
  /** @since Chrome 70 */
7257
- autofillAddressEnabled: chrome.types.ChromeSetting;
7241
+ autofillAddressEnabled: chrome.types.ChromeSetting<boolean>;
7258
7242
  /** @since Chrome 70 */
7259
- autofillCreditCardEnabled: chrome.types.ChromeSetting;
7243
+ autofillCreditCardEnabled: chrome.types.ChromeSetting<boolean>;
7260
7244
  }
7261
7245
 
7262
7246
  export interface Network {
7263
- networkPredictionEnabled: chrome.types.ChromeSetting;
7264
- /** @deprecated since Chrome 48. Please use privacy.network.webRTCIPHandlingPolicy. */
7265
- webRTCMultipleRoutesEnabled: chrome.types.ChromeSetting;
7266
- /** @deprecated since Chrome 48. Please use privacy.network.webRTCIPHandlingPolicy. */
7267
- webRTCNonProxiedUdpEnabled: chrome.types.ChromeSetting;
7247
+ networkPredictionEnabled: chrome.types.ChromeSetting<boolean>;
7268
7248
  /** @since Chrome 48 */
7269
- webRTCIPHandlingPolicy: chrome.types.ChromeSetting;
7249
+ webRTCIPHandlingPolicy: chrome.types.ChromeSetting<IPHandlingPolicy>;
7270
7250
  }
7271
7251
 
7272
7252
  export interface Websites {
7273
- thirdPartyCookiesAllowed: chrome.types.ChromeSetting;
7274
- referrersEnabled: chrome.types.ChromeSetting;
7275
- hyperlinkAuditingEnabled: chrome.types.ChromeSetting;
7253
+ thirdPartyCookiesAllowed: chrome.types.ChromeSetting<boolean>;
7254
+ referrersEnabled: chrome.types.ChromeSetting<boolean>;
7255
+ hyperlinkAuditingEnabled: chrome.types.ChromeSetting<boolean>;
7276
7256
  /** @since Chrome 21. Available on Windows and ChromeOS only. */
7277
- protectedContentEnabled: chrome.types.ChromeSetting;
7257
+ protectedContentEnabled: chrome.types.ChromeSetting<boolean>;
7278
7258
  /** @since Chrome 65 */
7279
- doNotTrackEnabled: chrome.types.ChromeSetting;
7259
+ doNotTrackEnabled: chrome.types.ChromeSetting<boolean>;
7280
7260
  }
7281
7261
 
7282
7262
  /** Settings that enable or disable features that require third-party network services provided by Google and your default search provider. */
@@ -7359,7 +7339,7 @@ declare namespace chrome {
7359
7339
 
7360
7340
  export interface ProxyErrorEvent extends chrome.events.Event<(details: ErrorDetails) => void> {}
7361
7341
 
7362
- export var settings: chrome.types.ChromeSetting;
7342
+ export var settings: chrome.types.ChromeSetting<ProxyConfig>;
7363
7343
  /** Notifies about proxy errors. */
7364
7344
  export var onProxyError: ProxyErrorEvent;
7365
7345
  }
@@ -11526,93 +11506,107 @@ declare namespace chrome {
11526
11506
  * @since Chrome 13
11527
11507
  */
11528
11508
  export namespace types {
11529
- type settingsScope = "regular" | "regular_only" | "incognito_persistent" | "incognito_session_only" | undefined;
11509
+ /**
11510
+ * The scope of the ChromeSetting. One of
11511
+ * * `regular`: setting for the regular profile (which is inherited by the incognito profile if not overridden elsewhere),
11512
+ * * `regular_only`: setting for the regular profile only (not inherited by the incognito profile),
11513
+ * * `incognito_persistent`: setting for the incognito profile that survives browser restarts (overrides regular preferences)
11514
+ * * `incognito_session_only`: setting for the incognito profile that can only be set during an incognito session and is deleted when the incognito session ends (overrides regular and incognito_persistent preferences).
11515
+ * @since Chrome 44
11516
+ */
11517
+ export type ChromeSettingScope = "regular" | "regular_only" | "incognito_persistent" | "incognito_session_only";
11530
11518
 
11531
- export interface ChromeSettingClearDetails {
11532
- /**
11533
- * Optional.
11534
- * The scope of the ChromeSetting. One of
11535
- * regular: setting for the regular profile (which is inherited by the incognito profile if not overridden elsewhere),
11536
- * regular_only: setting for the regular profile only (not inherited by the incognito profile),
11537
- * incognito_persistent: setting for the incognito profile that survives browser restarts (overrides regular preferences),
11538
- * • incognito_session_only: setting for the incognito profile that can only be set during an incognito session and is deleted when the incognito session ends (overrides regular and incognito_persistent preferences).
11539
- */
11540
- scope?: settingsScope;
11541
- }
11519
+ /**
11520
+ * One of
11521
+ * * `not_controllable`: cannot be controlled by any extension
11522
+ * * `controlled_by_other_extensions`: controlled by extensions with higher precedence
11523
+ * * `controllable_by_this_extension`: can be controlled by this extension
11524
+ * * `controlled_by_this_extension`: controlled by this extension
11525
+ * @since Chrome 44
11526
+ */
11527
+ export type LevelOfControl =
11528
+ | "not_controllable"
11529
+ | "controlled_by_other_extensions"
11530
+ | "controllable_by_this_extension"
11531
+ | "controlled_by_this_extension";
11542
11532
 
11543
- export interface ChromeSettingSetDetails extends ChromeSettingClearDetails {
11533
+ /** Which setting to change. */
11534
+ export interface ChromeSettingSetDetails<T> {
11544
11535
  /**
11545
11536
  * The value of the setting.
11546
11537
  * Note that every setting has a specific value type, which is described together with the setting. An extension should not set a value of a different type.
11547
11538
  */
11548
- value: any;
11549
- /**
11550
- * Optional.
11551
- * The scope of the ChromeSetting. One of
11552
- * • regular: setting for the regular profile (which is inherited by the incognito profile if not overridden elsewhere),
11553
- * • regular_only: setting for the regular profile only (not inherited by the incognito profile),
11554
- * • incognito_persistent: setting for the incognito profile that survives browser restarts (overrides regular preferences),
11555
- * • incognito_session_only: setting for the incognito profile that can only be set during an incognito session and is deleted when the incognito session ends (overrides regular and incognito_persistent preferences).
11556
- */
11557
- scope?: settingsScope;
11539
+ value: T;
11540
+ /** Where to set the setting (default: regular). */
11541
+ scope?: ChromeSettingScope;
11558
11542
  }
11559
11543
 
11544
+ /** Which setting to consider. */
11560
11545
  export interface ChromeSettingGetDetails {
11561
- /** Optional. Whether to return the value that applies to the incognito session (default false). */
11562
- incognito?: boolean | undefined;
11546
+ /** Whether to return the value that applies to the incognito session (default false). */
11547
+ incognito?: boolean;
11563
11548
  }
11564
11549
 
11565
- /**
11566
- * @param details Details of the currently effective value.
11567
- */
11568
- export type DetailsCallback = (details: ChromeSettingGetResultDetails) => void;
11569
-
11570
- export interface ChromeSettingGetResultDetails {
11571
- /**
11572
- * One of
11573
- * • not_controllable: cannot be controlled by any extension
11574
- * • controlled_by_other_extensions: controlled by extensions with higher precedence
11575
- * • controllable_by_this_extension: can be controlled by this extension
11576
- * • controlled_by_this_extension: controlled by this extension
11577
- */
11578
- levelOfControl:
11579
- | "not_controllable"
11580
- | "controlled_by_other_extensions"
11581
- | "controllable_by_this_extension"
11582
- | "controlled_by_this_extension";
11550
+ /** Details of the currently effective value */
11551
+ export interface ChromeSettingGetResult<T> {
11552
+ /** The level of control of the setting. */
11553
+ levelOfControl: LevelOfControl;
11583
11554
  /** The value of the setting. */
11584
- value: any;
11555
+ value: T;
11585
11556
  /**
11586
- * Optional.
11587
11557
  * Whether the effective value is specific to the incognito session.
11588
11558
  * This property will only be present if the incognito property in the details parameter of get() was true.
11589
11559
  */
11590
- incognitoSpecific?: boolean | undefined;
11560
+ incognitoSpecific?: boolean;
11591
11561
  }
11592
11562
 
11593
- export interface ChromeSettingChangedEvent extends chrome.events.Event<DetailsCallback> {}
11563
+ /** Which setting to clear. */
11564
+ export interface ChromeSettingClearDetails {
11565
+ /** Where to clear the setting (default: regular). */
11566
+ scope?: ChromeSettingScope;
11567
+ }
11594
11568
 
11595
- /** An interface that allows access to a Chrome browser setting. See accessibilityFeatures for an example. */
11596
- export interface ChromeSetting {
11569
+ /** Details of the currently effective value. */
11570
+ export interface ChromeSettingOnChangeDetails<T> {
11571
+ /**
11572
+ * Whether the effective value is specific to the incognito session. T
11573
+ * his property will only be present if the incognito property in the details parameter of get() was true.
11574
+ */
11575
+ incognitoSpecific?: boolean;
11576
+ /** The value of the setting. */
11577
+ value: T;
11578
+ /** The level of control of the setting. */
11579
+ levelOfControl: LevelOfControl;
11580
+ }
11581
+
11582
+ /**
11583
+ * An interface that allows access to a Chrome browser setting.
11584
+ * See {@link chrome.accessibilityFeatures} for an example.
11585
+ */
11586
+ export interface ChromeSetting<T> {
11597
11587
  /**
11598
11588
  * Sets the value of a setting.
11599
- * @param details Which setting to change.
11600
- * @param callback Optional. Called at the completion of the set operation.
11589
+ * Can return its result via Promise in Manifest V3 or later since Chrome 96.
11601
11590
  */
11602
- set(details: ChromeSettingSetDetails, callback?: Function): void;
11591
+ set(details: ChromeSettingSetDetails<T>, callback: () => void): void;
11592
+ set(details: ChromeSettingSetDetails<T>): Promise<void>;
11593
+
11603
11594
  /**
11604
11595
  * Gets the value of a setting.
11605
- * @param details Which setting to consider.
11596
+ * Can return its result via Promise in Manifest V3 or later since Chrome 96.
11606
11597
  */
11607
- get(details: ChromeSettingGetDetails, callback?: DetailsCallback): void;
11598
+ get(details: ChromeSettingGetDetails, callback: (details: ChromeSettingGetResult<T>) => void): void;
11599
+ get(details: ChromeSettingGetDetails): Promise<ChromeSettingGetResult<T>>;
11600
+
11608
11601
  /**
11609
11602
  * Clears the setting, restoring any default value.
11610
- * @param details Which setting to clear.
11611
- * @param callback Optional. Called at the completion of the clear operation.
11603
+ * Can return its result via Promise in Manifest V3 or later since Chrome 96.
11612
11604
  */
11613
- clear(details: ChromeSettingClearDetails, callback?: Function): void;
11605
+ clear(details: ChromeSettingClearDetails, callback: () => void): void;
11606
+ clear(details: ChromeSettingClearDetails): Promise<void>;
11607
+
11614
11608
  /** Fired after the setting changes. */
11615
- onChange: ChromeSettingChangedEvent;
11609
+ onChange: chrome.events.Event<(details: ChromeSettingOnChangeDetails<T>) => void>;
11616
11610
  }
11617
11611
  }
11618
11612
 
chrome/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@types/chrome",
3
- "version": "0.0.287",
3
+ "version": "0.0.289",
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": "93718a3e0ce89514577fd2476b8b954fad422c79dda8f5cab5509b57e4a7da16",
97
+ "typesPublisherContentHash": "56c695cd33a0165d7b0484e89eba4947466c5b5bdc9baa278b1a67707371ab20",
98
98
  "typeScriptVersion": "5.0"
99
99
  }