MemoryInfo privateBytes property
The privateBytes property of MemoryInfo is an optional Integer property available only on Windows. It represents the amount of memory not shared by other processes, such as JS heap or HTML content, measured in Kilobytes.
PermissionRequest requestingUrl property
requestingUrl is a string property containing the last URL the requesting frame loaded.
PermissionRequest isMainFrame property
isMainFrame is a boolean property that indicates whether the frame making the permission request is the main frame.
PrinterInfo example with options
Example PrinterInfo object: { name: 'Austin_4th_Floor_Printer___C02XK13BJHD4', displayName: 'Austin 4th Floor Printer @ C02XK13BJHD4', description: 'TOSHIBA ColorMFP', options: { copies: '1', 'device-uri': 'dnssd://Austin%204th%20Floor%20Printer%20%40%20C02XK13BJHD4._ipps._tcp.local./?uuid=71687f1e-1147-3274-6674-22de61b110bd', finishings: '3', 'job-cancel-after': '10800', 'job-hold-until': 'no-hold', 'job-priority': '50', 'job-sheets': 'none,none', 'marker-change-time': '0', 'number-up': '1', 'printer-commands': 'ReportLevels,PrintSelfTestPage,com.toshiba.ColourProfiles.update,com.toshiba.EFiling.update,com.toshiba.EFiling.checkPassword', 'printer-info': 'Austin 4th Floor Printer @ C02XK13BJHD4', 'printer-is-accepting-jobs': 'true', 'printer-is-shared': 'false', 'printer-is-temporary': 'false', 'printer-location': '', 'printer-make-and-model': 'TOSHIBA ColorMFP', 'printer-state': '3', 'printer-state-change-time': '1573472937', 'printer-state-reasons': 'offline-report,com.toshiba.snmp.failed', 'printer-type': '10531038', 'printer-uri-supported': 'ipp://localhost/printers/Austin_4th_Floor_Printer___C02XK13BJHD4', system_driverinfo: 'T' } }
PrinterInfo object structure
The PrinterInfo object has four properties: name (string) - the name of the printer as understood by the OS; displayName (string) - the name of the printer as shown in Print Preview; description (string) - a longer description of the printer's type; options (Object) - an object containing a variable number of platform-specific printer information.
PrinterInfo status property platform differences
The status property in PrinterInfo options means different things on different platforms. On Windows, potential values can be found at https://learn.microsoft.com/en-us/windows/win32/printdocs/printer-info-2. On Linux and macOS, values can be found at https://www.cups.org/doc/cupspm.html.
ProcessMemoryInfo private property definition
The private property of ProcessMemoryInfo is an Integer measured in Kilobytes that represents the amount of memory not shared by other processes, including JS heap and HTML content.
ProcessMemoryInfo residentSet property definition
The residentSet property of ProcessMemoryInfo is an Integer measured in Kilobytes that represents the amount of memory currently pinned to actual physical RAM.
ProcessMemoryInfo shared property definition
The shared property of ProcessMemoryInfo is an Integer measured in Kilobytes that represents the amount of memory shared between processes, typically memory consumed by the Electron code itself.
ProcessMemoryInfo residentSet property platform support
The residentSet property of ProcessMemoryInfo is only available on Linux and Windows platforms.
ProductSubscriptionPeriod unit property valid values
The unit property is a string that specifies the increment of time for a subscription period. Valid values are: day, week, month, year.
ProductSubscriptionPeriod numberOfUnits property
The numberOfUnits property is a number that represents the number of units per subscription period.
ProcessMetric type values
The type field of ProcessMetric can be one of the following values: Browser, Tab, Utility, Zygote, Sandbox helper, GPU, Pepper Plugin, Pepper Plugin Broker, or Unknown.
ProcessMetric creationTime uniqueness
The pid and creationTime fields should be used together to uniquely identify a process, since the pid can be reused after a process dies.
ProcessMetric integrityLevel values (Windows)
The integrityLevel field on Windows can be one of the following values: untrusted, low, medium, high, or unknown.
SharedDictionaryUsageInfo topFrameSite property
The topFrameSite property is a string that specifies the site of the top-level browsing context, which is the main frame or tab that contains the request. It is less granular than frameOrigin and focuses on the broader 'site' scope. In practice, it will look like a URL.
SharedDictionaryUsageInfo frameOrigin property
The frameOrigin property is a string that specifies the origin of the frame where the request originates. It is specific to the individual frame making the request and is defined by its scheme, host, and port. In practice, it will look like a URL.
SharedDictionaryUsageInfo totalSizeBytes property
The totalSizeBytes property is a number that specifies the amount of bytes stored for the shared dictionary information object in Chromium's internal storage, which is usually Sqlite.
SharedWorkerInfo id property
The id property of SharedWorkerInfo is a string representing the unique identifier of the shared worker.
SharedWorkerInfo url property
The url property of SharedWorkerInfo is a string representing the url of the shared worker.
Transaction Object structure
The Transaction Object contains the following fields: transactionIdentifier (string, required) - A string that uniquely identifies a successful payment transaction. transactionDate (string, required) - The date the transaction was added to the App Store's payment queue. originalTransactionIdentifier (string, required) - The identifier of the restored transaction by the App Store. transactionState (string, required) - The transaction state, can be 'purchasing', 'purchased', 'failed', 'restored' or 'deferred'. errorCode (Integer, required) - The error code if an error occurred while processing the transaction. errorMessage (string, required) - The error message if an error occurred while processing the transaction. payment (Object, required) - Contains productIdentifier (string, required), quantity (Integer, required), applicationUsername (string, required), and paymentDiscount (PaymentDiscount optional).
recording_mode values
The recording_mode property can be set to 'record-until-full', 'record-continuously', 'record-as-much-as-possible', or 'trace-to-console'. The default value is 'record-until-full'.
trace_buffer_size_in_kb default value
The trace_buffer_size_in_kb property specifies the maximum size of the trace recording buffer in kilobytes and defaults to 100MB.
enable_argument_filter purpose
When enable_argument_filter is set to true, event data is filtered according to a specific list of manually vetted events that have been verified to not include any PII (personally identifiable information).
included_categories and excluded_categories glob patterns
Both included_categories and excluded_categories accept string arrays that can include glob-like patterns using '*' at the end of the category name to match multiple categories.
included_process_ids behavior
The included_process_ids property is a number array that specifies which process IDs to include in the trace. If not specified, the trace will include all processes.
memory_dump_config usage
The memory_dump_config property is a Record<string, any> that contains optional additional configuration for data collection when the 'disabled-by-default-memory-infra' category is enabled.
WebPreferences scrollBounce option (macOS)
The scrollBounce boolean option (optional, macOS only) enables scroll bounce (rubber banding) effect on macOS. The default is false.
WebPreferences devTools option
The devTools boolean option (optional) controls whether DevTools is enabled. When set to false, BrowserWindow.webContents.openDevTools() cannot be used to open DevTools. The default value is true.
WebPreferences nodeIntegration option
The nodeIntegration boolean option (optional) controls whether Node.js integration is enabled in the renderer process. The default value is false.
WebPreferences nodeIntegrationInWorker option
The nodeIntegrationInWorker boolean option (optional) controls whether Node.js integration is enabled in web workers. The default value is false.
WebPreferences nodeIntegrationInSubFrames option
The nodeIntegrationInSubFrames boolean option (optional, experimental) enables Node.js support in sub-frames such as iframes and child windows. All preload scripts will load for every iframe. Use process.isMainFrame to determine if running in the main frame or a sub-frame.
WebPreferences preload option
The preload string option (optional) specifies a script that will be loaded before other scripts run in the page. This script always has access to Node APIs regardless of whether node integration is turned on or off. The value must be an absolute file path to the script. When node integration is off, the preload script can reintroduce Node global symbols to the global scope.
WebPreferences session option
The session option (optional) accepts a Session object and sets the session used by the page. The partition option can be used as an alternative. When both session and partition are provided, session is preferred. The default is the default session.
WebPreferences partition option
The partition string option (optional) sets the session used by the page according to the session's partition string. If partition starts with persist:, the page uses a persistent session available to all pages in the app with the same partition. Without the persist: prefix, the page uses an in-memory session. Multiple pages can share the same session by assigning the same partition. The default is the default session.
WebPreferences zoomFactor option
The zoomFactor number option (optional) sets the default zoom factor of the page where 3.0 represents 300%. The default is 1.0.
WebPreferences zoomMode option
The zoomMode string option (optional) sets the initial zoom mode for the page. Available modes can be found in contents.setZoomMode documentation. The default is 'default'.
WebPreferences javascript option
The javascript boolean option (optional) enables or disables JavaScript support. The default is true.
WebPreferences images option
The images boolean option (optional) enables or disables image support. The default is true.
WebPreferences imageAnimationPolicy option
The imageAnimationPolicy string option (optional) specifies how to run image animations (e.g. GIFs). Accepted values are animate, animateOnce, or noAnimation. The default is animate.
WebPreferences textAreasAreResizable option
The textAreasAreResizable boolean option (optional) makes TextArea elements resizable. The default is true.
WebPreferences webgl option
The webgl boolean option (optional) enables or disables WebGL support. The default is true.
WebPreferences plugins option
The plugins boolean option (optional) controls whether plugins should be enabled. The default is false.
WebPreferences experimentalFeatures option
The experimentalFeatures boolean option (optional) enables Chromium's experimental features. The default is false.
WebPreferences disableBlinkFeatures option
The disableBlinkFeatures string option (optional) accepts a comma-separated list of feature strings to disable, such as CSSVariables,KeyboardEventKey. The full list of supported feature strings can be found in the RuntimeEnabledFeatures.json5 file in the Chromium source.
WebPreferences defaultEncoding option
The defaultEncoding string option (optional) sets the default character encoding. The default is ISO-8859-1.
WebPreferences backgroundThrottling option
The backgroundThrottling boolean option (optional) controls whether animations and timers are throttled when the page becomes background. This also affects the Page Visibility API. When at least one webContents displayed in a single browserWindow has disabled backgroundThrottling, frames will be drawn and swapped for the whole window and other webContents displayed by it. The default is true.
WebPreferences offscreen option
The offscreen option (optional) is either a boolean or an object that controls whether offscreen rendering is enabled for the browser window. The default is false. When enabled as an object, it supports the following optional properties: useSharedTexture (boolean, experimental, defaults to false), sharedTexturePixelFormat (string, experimental, defaults to argb with options: argb for 8-bit unorm RGBA with SRGB SDR, rgbaf16 for 16-bit float RGBA with scRGB HDR, nv12 for 12bpp Y plane with 2x2 interleaved UV plane and REC709 color space), and deviceScaleFactor (number, experimental, defaults to 1 if not set).
WebPreferences webviewTag option
The webviewTag boolean option (optional) controls whether the <webview> tag is enabled. The default is false. Note: The preload script configured for the <webview> will have node integration enabled when it is executed, so ensure remote or untrusted content cannot create a <webview> tag with a malicious preload script. Use the will-attach-webview event on webContents to strip away the preload script and validate or alter the <webview>'s initial settings.
WebPreferences additionalArguments option
The additionalArguments string array option (optional) is a list of strings that will be appended to process.argv in the renderer process. This is useful for passing small bits of data down to renderer process preload scripts.
WebPreferences safeDialogs option
The safeDialogs boolean option (optional) enables browser-style consecutive dialog protection. The default is false.
WebPreferences safeDialogsMessage option
The safeDialogsMessage string option (optional) is the message to display when consecutive dialog protection is triggered. If not defined, a default message is used (currently in English and not localized).
WebPreferences disableDialogs option
The disableDialogs boolean option (optional) disables dialogs completely. This overrides safeDialogs. The default is false.
WebPreferences navigateOnDragDrop option
The navigateOnDragDrop boolean option (optional) controls whether dragging and dropping a file or link onto the page causes a navigation. The default is false.
WebPreferences autoplayPolicy option
The autoplayPolicy string option (optional) sets the autoplay policy to apply to content in the window. Accepted values are no-user-gesture-required, user-gesture-required, and document-user-activation-required. The default is no-user-gesture-required.
WebPreferences disableHtmlFullscreenWindowResize option
The disableHtmlFullscreenWindowResize boolean option (optional) controls whether the window resizes when entering HTML Fullscreen. The default is false.
WebPreferences spellcheck option
The spellcheck boolean option (optional) controls whether the builtin spellchecker is enabled. The default is true.
WebPreferences enableWebSQL option
The enableWebSQL boolean option (optional) controls whether the WebSQL API is enabled. The default is true.
WebPreferences v8CacheOptions option
The v8CacheOptions string option (optional) enforces the v8 code caching policy used by blink. Accepted values are: none (disables code caching), code (heuristic based code caching), bypassHeatCheck (bypass code caching heuristics but with lazy compilation), and bypassHeatCheckAndEagerCompile (same as above except compilation is eager). The default policy is code.
WebPreferences enablePreferredSizeMode option
The enablePreferredSizeMode boolean option (optional) enables preferred size mode. The preferred size is the minimum size needed to contain the document layout without requiring scrolling. When enabled, this will cause the preferred-size-changed event to be emitted on the WebContents when the preferred size changes. The default is false.