@overwolf/ow-electron-packages-types 1.1.5 → 1.1.6-beta.1

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 (2) hide show
  1. package/package.json +1 -1
  2. package/types.d.ts +135 -3
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@overwolf/ow-electron-packages-types",
3
- "version": "1.1.5",
3
+ "version": "1.1.6-beta.1",
4
4
  "description": "Type definition file for autocompletion and documentation purposes for ow-electron packages",
5
5
  "license": "MIT",
6
6
  "types": "types.d.ts",
package/types.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import '@overwolf/ow-electron';
1
2
  import type {
2
3
  BrowserWindow,
3
4
  BrowserWindowConstructorOptions,
@@ -3070,6 +3071,18 @@ interface EncoderSettingsNVENC extends VideoEncoderSettingsBase {
3070
3071
  */
3071
3072
  rate_control?: kNVENCEncoderRateControl;
3072
3073
 
3074
+ /**
3075
+ * Constant Quantization Parameter (CQP) level.
3076
+ *
3077
+ * Sets a fixed quality level for the entire stream. Only applies when
3078
+ * {@link rate_control} is `'CQP'`.
3079
+ *
3080
+ * Range: `1`–`51` (`1`–`63` for AV1).
3081
+ *
3082
+ * @default 20
3083
+ */
3084
+ cqp?: number;
3085
+
3073
3086
  /**
3074
3087
  * Encoding quality preset.
3075
3088
  *
@@ -3253,11 +3266,21 @@ interface EncoderSettingsAMF extends VideoEncoderSettingsBase {
3253
3266
  ffmpeg_opts?: string;
3254
3267
 
3255
3268
  /**
3256
- * Constant Peak Quantizer (CPQ) value.
3257
- * Determines the quality level when using quantizer-based rate control modes.
3269
+ * Constant Quantization Parameter (CQP) level.
3270
+ *
3271
+ * Determines the quality level for quantizer-based rate control. Only applies
3272
+ * when {@link rate_control} is `'CQP'` or `'QVBR'`.
3273
+ *
3274
+ * Range: `0`–`51` (`0`–`63` for AV1).
3258
3275
  *
3259
3276
  * @default 20
3260
3277
  */
3278
+ cqp?: number;
3279
+
3280
+ /**
3281
+ * @deprecated Use {@link cqp} instead. Retained for backward compatibility;
3282
+ * this value is ignored by the encoder.
3283
+ */
3261
3284
  cpq?: number;
3262
3285
 
3263
3286
  /**
@@ -3363,6 +3386,30 @@ interface EncoderSettingsQuickSync extends VideoEncoderSettingsBase {
3363
3386
  */
3364
3387
  rate_control?: kQuickSyncEncoderRateControl;
3365
3388
 
3389
+ /**
3390
+ * Constant Quantization Parameter (CQP) level.
3391
+ *
3392
+ * Sets a fixed quantizer for the entire stream. Only applies when
3393
+ * {@link rate_control} is `'CQP'`.
3394
+ *
3395
+ * Range: `1`–`51` (`1`–`63` for AV1).
3396
+ *
3397
+ * @default 23
3398
+ */
3399
+ cqp?: number;
3400
+
3401
+ /**
3402
+ * Intelligent Constant Quality (ICQ) level.
3403
+ *
3404
+ * Lower values yield higher quality. Only applies when
3405
+ * {@link rate_control} is `'ICQ'`.
3406
+ *
3407
+ * Range: `1`–`51`.
3408
+ *
3409
+ * @default 23
3410
+ */
3411
+ icq_quality?: number;
3412
+
3366
3413
  /**
3367
3414
  * Target usage or encoding preset that balances performance and quality.
3368
3415
  *
@@ -3454,6 +3501,18 @@ interface EncoderSettingsX264 extends VideoEncoderSettingsBase {
3454
3501
  */
3455
3502
  rate_control?: kX264EncoderRateControl;
3456
3503
 
3504
+ /**
3505
+ * Constant Rate Factor (CRF) quality level.
3506
+ *
3507
+ * Lower values yield higher quality and larger files. Only applies when
3508
+ * {@link rate_control} is `'CRF'` or `'VBR'`.
3509
+ *
3510
+ * Range: `0`–`51`.
3511
+ *
3512
+ * @default 23
3513
+ */
3514
+ crf?: number;
3515
+
3457
3516
  /**
3458
3517
  * Specifies the encoding speed/quality trade-off preset.
3459
3518
  * A slower preset provides better compression (quality per bitrate).
@@ -3756,6 +3815,29 @@ interface EncoderInformation {
3756
3815
  audio: AudioEncoderInfo[];
3757
3816
  }
3758
3817
 
3818
+ /**
3819
+ * Crash dump detail level for the OBS host process.
3820
+ * - `mini`: small dump (thread stacks + module list); the default.
3821
+ * - `full`: complete-memory dump; large — opt-in for debugging only.
3822
+ */
3823
+ type CrashDumpType = 'mini' | 'full';
3824
+
3825
+ /**
3826
+ * Crash dump configuration for the OBS host process.
3827
+ */
3828
+ interface CrashDumpOptions {
3829
+ /**
3830
+ * Dump detail level; defaults to `mini`. See {@link CrashDumpType}.
3831
+ */
3832
+ type?: CrashDumpType;
3833
+
3834
+ /**
3835
+ * Max crash dumps to retain in `ow-obs/crashdumps`; the oldest are deleted
3836
+ * beyond this count. Positive integer, defaults to `3`.
3837
+ */
3838
+ maxFiles?: number;
3839
+ }
3840
+
3759
3841
  /**
3760
3842
  * Configuration options for launching or customizing the recording application behavior.
3761
3843
  *
@@ -3767,6 +3849,7 @@ interface EncoderInformation {
3767
3849
  * const options: RecordingAppOptions = {
3768
3850
  * showDebugWindow: true,
3769
3851
  * enableDebugLogs: true,
3852
+ * maxLogFiles: 20,
3770
3853
  * };
3771
3854
  * ```
3772
3855
  */
@@ -3782,6 +3865,22 @@ interface RecordingAppOptions {
3782
3865
  * Can be used to troubleshoot issues during recording.
3783
3866
  */
3784
3867
  enableDebugLogs?: boolean;
3868
+
3869
+ /**
3870
+ * Maximum number of OBS log files to retain under the recorder's
3871
+ * `ow-obs/logs` folder. Once the number of logs exceeds this value, the
3872
+ * oldest logs are gradually pruned.
3873
+ * Must be a positive integer. Defaults to `10`.
3874
+ */
3875
+ maxLogFiles?: number;
3876
+
3877
+ /**
3878
+ * Tune OBS-host crash dumps. Mini-dump capture is always on; these options
3879
+ * only change the detail level and retention count.
3880
+ *
3881
+ * @see {@link CrashDumpOptions}
3882
+ */
3883
+ crashDumps?: CrashDumpOptions;
3785
3884
  }
3786
3885
 
3787
3886
 
@@ -4984,6 +5083,33 @@ interface OverlayWindowOptions
4984
5083
  */
4985
5084
  disableHardwareAcceleration?: boolean;
4986
5085
 
5086
+ /**
5087
+ * ⚠️ BETA — this option is experimental and its behavior may change in
5088
+ * a future release.
5089
+ *
5090
+ * `true`—renders this overlay window through a GPU shared texture
5091
+ * instead of copying pixels through shared memory on every paint. The overlay
5092
+ * forwards the GPU texture handle directly to the injected game process, which
5093
+ * composites it without any CPU-side pixel copy, significantly lowering
5094
+ * per-frame CPU overhead.
5095
+ *
5096
+ * Requires hardware acceleration to be enabled and the current game to report
5097
+ * shared-texture support (see {@link GameWindowInfo.isSharedTextureSupported}).
5098
+ * The flag is silently ignored when either condition is not met, falling back
5099
+ * to the shared-memory (CPU copy) path.
5100
+ *
5101
+ * The rendering path follows the active game: when the overlay moves to a
5102
+ * different game, a shared-texture window automatically falls back to the
5103
+ * shared-memory (CPU copy) path on a game that does not support shared
5104
+ * texture, and restores the shared-texture path on a game that does — so the
5105
+ * window stays visible on every game.
5106
+ *
5107
+ * @default false
5108
+ *
5109
+ * @since 2.0.2
5110
+ */
5111
+ useSharedTexture?: boolean;
5112
+
4987
5113
  /**
4988
5114
  * Enables Chromium process isolation (sandboxing).
4989
5115
  * Used to enforce stricter security policies or prevent resource sharing between renderer processes.
@@ -5332,11 +5458,17 @@ interface GameWindowInfo {
5332
5458
 
5333
5459
  /**
5334
5460
  * Indicates if fullscreen rendering is disabled.
5335
- *
5461
+ *
5336
5462
  * Relevant only for OOPO games.
5337
5463
  * @since 1.9.0
5338
5464
  */
5339
5465
  readonly isOOPOFullscreenRenderingDisabled?: boolean;
5466
+
5467
+ /**
5468
+ * Indicates if the game supports shared-texture (GPU) overlay rendering.
5469
+ * @since 2.0.0
5470
+ */
5471
+ readonly isSharedTextureSupported?: boolean;
5340
5472
  }
5341
5473
 
5342
5474
  /**