unified-video-framework 1.4.376 → 1.4.378

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 (35) hide show
  1. package/package.json +1 -1
  2. package/packages/core/dist/interfaces/IDRMProtection.d.ts +90 -0
  3. package/packages/core/dist/interfaces/IDRMProtection.d.ts.map +1 -0
  4. package/packages/core/dist/interfaces/IDRMProtection.js +15 -0
  5. package/packages/core/dist/interfaces/IDRMProtection.js.map +1 -0
  6. package/packages/core/dist/interfaces.d.ts +1 -0
  7. package/packages/core/dist/interfaces.d.ts.map +1 -1
  8. package/packages/core/dist/interfaces.js +1 -0
  9. package/packages/core/dist/interfaces.js.map +1 -1
  10. package/packages/core/src/interfaces/IDRMProtection.ts +285 -0
  11. package/packages/core/src/interfaces.ts +2 -0
  12. package/packages/react-native/dist/drm/AndroidDRMProtection.d.ts +21 -0
  13. package/packages/react-native/dist/drm/AndroidDRMProtection.d.ts.map +1 -0
  14. package/packages/react-native/dist/drm/AndroidDRMProtection.js +184 -0
  15. package/packages/react-native/dist/drm/AndroidDRMProtection.js.map +1 -0
  16. package/packages/react-native/dist/drm/iOSDRMProtection.d.ts +21 -0
  17. package/packages/react-native/dist/drm/iOSDRMProtection.d.ts.map +1 -0
  18. package/packages/react-native/dist/drm/iOSDRMProtection.js +172 -0
  19. package/packages/react-native/dist/drm/iOSDRMProtection.js.map +1 -0
  20. package/packages/react-native/src/drm/AndroidDRMProtection.ts +419 -0
  21. package/packages/react-native/src/drm/iOSDRMProtection.ts +415 -0
  22. package/packages/web/dist/drm/WebDRMProtection.d.ts +37 -0
  23. package/packages/web/dist/drm/WebDRMProtection.d.ts.map +1 -0
  24. package/packages/web/dist/drm/WebDRMProtection.js +378 -0
  25. package/packages/web/dist/drm/WebDRMProtection.js.map +1 -0
  26. package/packages/web/dist/index.d.ts +1 -0
  27. package/packages/web/dist/index.d.ts.map +1 -1
  28. package/packages/web/dist/index.js +1 -0
  29. package/packages/web/dist/index.js.map +1 -1
  30. package/packages/web/dist/react/WebPlayerView.d.ts.map +1 -1
  31. package/packages/web/dist/react/WebPlayerView.js +17 -42
  32. package/packages/web/dist/react/WebPlayerView.js.map +1 -1
  33. package/packages/web/src/drm/WebDRMProtection.ts +596 -0
  34. package/packages/web/src/index.ts +3 -0
  35. package/packages/web/src/react/WebPlayerView.tsx +27 -52
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "unified-video-framework",
3
- "version": "1.4.376",
3
+ "version": "1.4.378",
4
4
  "description": "Cross-platform video player framework supporting iOS, Android, Web, Smart TVs (Samsung/LG), Roku, and more",
5
5
  "main": "packages/core/dist/index.js",
6
6
  "types": "packages/core/dist/index.d.ts",
@@ -0,0 +1,90 @@
1
+ export interface IDRMProtectionConfig {
2
+ enabled: boolean;
3
+ blockScreenRecording?: boolean;
4
+ blockAudioCapture?: boolean;
5
+ blockScreenshots?: boolean;
6
+ allowCasting?: boolean;
7
+ blockMirroring?: boolean;
8
+ licenseServerUrl?: string;
9
+ certificateUrl?: string;
10
+ licenseHeaders?: Record<string, string>;
11
+ widevineSecurityLevel?: 'L1' | 'L3';
12
+ onScreenRecordingDetected?: () => void;
13
+ onScreenshotAttempted?: () => void;
14
+ onMirroringDetected?: () => void;
15
+ onCastingStarted?: (deviceName: string, deviceType: CastDeviceType) => void;
16
+ onCastingEnded?: () => void;
17
+ onLicenseAcquired?: () => void;
18
+ onDRMError?: (error: DRMError) => void;
19
+ }
20
+ export type CastDeviceType = 'chromecast' | 'airplay' | 'smart_tv' | 'dlna' | 'miracast';
21
+ export interface DRMError {
22
+ code: DRMErrorCode;
23
+ message: string;
24
+ platform: 'web' | 'android' | 'ios';
25
+ recoverable: boolean;
26
+ details?: any;
27
+ }
28
+ export declare enum DRMErrorCode {
29
+ LICENSE_REQUEST_FAILED = "LICENSE_REQUEST_FAILED",
30
+ LICENSE_SERVER_UNREACHABLE = "LICENSE_SERVER_UNREACHABLE",
31
+ INVALID_LICENSE = "INVALID_LICENSE",
32
+ DEVICE_NOT_SUPPORTED = "DEVICE_NOT_SUPPORTED",
33
+ WIDEVINE_NOT_AVAILABLE = "WIDEVINE_NOT_AVAILABLE",
34
+ FAIRPLAY_NOT_AVAILABLE = "FAIRPLAY_NOT_AVAILABLE",
35
+ PLAYREADY_NOT_AVAILABLE = "PLAYREADY_NOT_AVAILABLE",
36
+ HARDWARE_DRM_NOT_AVAILABLE = "HARDWARE_DRM_NOT_AVAILABLE",
37
+ SCREEN_RECORDING_DETECTED = "SCREEN_RECORDING_DETECTED",
38
+ MIRRORING_DETECTED = "MIRRORING_DETECTED",
39
+ HDMI_OUTPUT_BLOCKED = "HDMI_OUTPUT_BLOCKED"
40
+ }
41
+ export interface IDRMProtectionStatus {
42
+ isProtected: boolean;
43
+ drmSystem: 'widevine' | 'fairplay' | 'playready' | 'none';
44
+ isScreenRecordingBlocked: boolean;
45
+ isAudioCaptureBlocked: boolean;
46
+ isScreenshotBlocked: boolean;
47
+ isCasting: boolean;
48
+ castDevice?: {
49
+ name: string;
50
+ type: CastDeviceType;
51
+ };
52
+ screenRecordingDetected: boolean;
53
+ mirroringDetected: boolean;
54
+ securityLevel?: 'L1' | 'L3';
55
+ licenseExpiration?: Date;
56
+ }
57
+ export interface IDRMProtection {
58
+ initialize(config: IDRMProtectionConfig): Promise<void>;
59
+ getStatus(): IDRMProtectionStatus;
60
+ setEnabled(enabled: boolean): void;
61
+ setFeature(feature: keyof IDRMProtectionConfig, enabled: boolean): void;
62
+ startCasting(deviceId: string): Promise<void>;
63
+ stopCasting(): Promise<void>;
64
+ getAvailableCastDevices(): Promise<CastDevice[]>;
65
+ renewLicense(): Promise<void>;
66
+ dispose(): void;
67
+ }
68
+ export interface CastDevice {
69
+ id: string;
70
+ name: string;
71
+ type: CastDeviceType;
72
+ isAvailable: boolean;
73
+ capabilities: {
74
+ supportsVideo: boolean;
75
+ supportsAudio: boolean;
76
+ supportsDRM: boolean;
77
+ maxResolution?: string;
78
+ };
79
+ }
80
+ export interface DRMKeySystemConfig {
81
+ keySystem: string;
82
+ licenseServerUrl: string;
83
+ certificateUrl?: string;
84
+ headers?: Record<string, string>;
85
+ audioRobustness?: string;
86
+ videoRobustness?: string;
87
+ persistentState?: 'required' | 'optional' | 'not-allowed';
88
+ distinctiveIdentifier?: 'required' | 'optional' | 'not-allowed';
89
+ }
90
+ //# sourceMappingURL=IDRMProtection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IDRMProtection.d.ts","sourceRoot":"","sources":["../../src/interfaces/IDRMProtection.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ export var DRMErrorCode;
2
+ (function (DRMErrorCode) {
3
+ DRMErrorCode["LICENSE_REQUEST_FAILED"] = "LICENSE_REQUEST_FAILED";
4
+ DRMErrorCode["LICENSE_SERVER_UNREACHABLE"] = "LICENSE_SERVER_UNREACHABLE";
5
+ DRMErrorCode["INVALID_LICENSE"] = "INVALID_LICENSE";
6
+ DRMErrorCode["DEVICE_NOT_SUPPORTED"] = "DEVICE_NOT_SUPPORTED";
7
+ DRMErrorCode["WIDEVINE_NOT_AVAILABLE"] = "WIDEVINE_NOT_AVAILABLE";
8
+ DRMErrorCode["FAIRPLAY_NOT_AVAILABLE"] = "FAIRPLAY_NOT_AVAILABLE";
9
+ DRMErrorCode["PLAYREADY_NOT_AVAILABLE"] = "PLAYREADY_NOT_AVAILABLE";
10
+ DRMErrorCode["HARDWARE_DRM_NOT_AVAILABLE"] = "HARDWARE_DRM_NOT_AVAILABLE";
11
+ DRMErrorCode["SCREEN_RECORDING_DETECTED"] = "SCREEN_RECORDING_DETECTED";
12
+ DRMErrorCode["MIRRORING_DETECTED"] = "MIRRORING_DETECTED";
13
+ DRMErrorCode["HDMI_OUTPUT_BLOCKED"] = "HDMI_OUTPUT_BLOCKED";
14
+ })(DRMErrorCode || (DRMErrorCode = {}));
15
+ //# sourceMappingURL=IDRMProtection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IDRMProtection.js","sourceRoot":"","sources":["../../src/interfaces/IDRMProtection.ts"],"names":[],"mappings":"AAiIA,MAAM,CAAN,IAAY,YAYX;AAZD,WAAY,YAAY;IACtB,iEAAiD,CAAA;IACjD,yEAAyD,CAAA;IACzD,mDAAmC,CAAA;IACnC,6DAA6C,CAAA;IAC7C,iEAAiD,CAAA;IACjD,iEAAiD,CAAA;IACjD,mEAAmD,CAAA;IACnD,yEAAyD,CAAA;IACzD,uEAAuD,CAAA;IACvD,yDAAyC,CAAA;IACzC,2DAA2C,CAAA;AAC7C,CAAC,EAZW,YAAY,KAAZ,YAAY,QAYvB"}
@@ -452,4 +452,5 @@ export interface PlayerConfig extends VideoPlayerConfig {
452
452
  volume?: number;
453
453
  chapters?: ChapterConfig;
454
454
  }
455
+ export * from './interfaces/IDRMProtection';
455
456
  //# sourceMappingURL=interfaces.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":"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"}
@@ -29,4 +29,5 @@ export var DRMType;
29
29
  DRMType["PLAYREADY"] = "playready";
30
30
  DRMType["CLEARKEY"] = "clearkey";
31
31
  })(DRMType || (DRMType = {}));
32
+ export * from './interfaces/IDRMProtection';
32
33
  //# sourceMappingURL=interfaces.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":"AAEA,MAAM,CAAN,IAAY,YAUX;AAVD,WAAY,YAAY;IACtB,2BAAW,CAAA;IACX,mCAAmB,CAAA;IACnB,+BAAe,CAAA;IACf,+BAAe,CAAA;IACf,6BAAa,CAAA;IACb,wCAAwB,CAAA;IACxB,oCAAoB,CAAA;IACpB,2BAAW,CAAA;IACX,mCAAmB,CAAA;AACrB,CAAC,EAVW,YAAY,KAAZ,YAAY,QAUvB;AAED,MAAM,CAAN,IAAY,eASX;AATD,WAAY,eAAe;IACzB,gCAAa,CAAA;IACb,sCAAmB,CAAA;IACnB,kCAAe,CAAA;IACf,sCAAmB,CAAA;IACnB,oCAAiB,CAAA;IACjB,0CAAuB,CAAA;IACvB,kCAAe,CAAA;IACf,kCAAe,CAAA;AACjB,CAAC,EATW,eAAe,KAAf,eAAe,QAS1B;AAGD,OAAO,EAAE,eAAe,IAAI,WAAW,EAAE,CAAC;AAE1C,MAAM,CAAN,IAAY,OAKX;AALD,WAAY,OAAO;IACjB,gCAAqB,CAAA;IACrB,gCAAqB,CAAA;IACrB,kCAAuB,CAAA;IACvB,gCAAqB,CAAA;AACvB,CAAC,EALW,OAAO,KAAP,OAAO,QAKlB"}
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":"AAEA,MAAM,CAAN,IAAY,YAUX;AAVD,WAAY,YAAY;IACtB,2BAAW,CAAA;IACX,mCAAmB,CAAA;IACnB,+BAAe,CAAA;IACf,+BAAe,CAAA;IACf,6BAAa,CAAA;IACb,wCAAwB,CAAA;IACxB,oCAAoB,CAAA;IACpB,2BAAW,CAAA;IACX,mCAAmB,CAAA;AACrB,CAAC,EAVW,YAAY,KAAZ,YAAY,QAUvB;AAED,MAAM,CAAN,IAAY,eASX;AATD,WAAY,eAAe;IACzB,gCAAa,CAAA;IACb,sCAAmB,CAAA;IACnB,kCAAe,CAAA;IACf,sCAAmB,CAAA;IACnB,oCAAiB,CAAA;IACjB,0CAAuB,CAAA;IACvB,kCAAe,CAAA;IACf,kCAAe,CAAA;AACjB,CAAC,EATW,eAAe,KAAf,eAAe,QAS1B;AAGD,OAAO,EAAE,eAAe,IAAI,WAAW,EAAE,CAAC;AAE1C,MAAM,CAAN,IAAY,OAKX;AALD,WAAY,OAAO;IACjB,gCAAqB,CAAA;IACrB,gCAAqB,CAAA;IACrB,kCAAuB,CAAA;IACvB,gCAAqB,CAAA;AACvB,CAAC,EALW,OAAO,KAAP,OAAO,QAKlB;AA8fD,cAAc,6BAA6B,CAAC"}
@@ -0,0 +1,285 @@
1
+ /**
2
+ * Netflix-Like DRM Protection Interface
3
+ *
4
+ * Provides comprehensive content protection against:
5
+ * - Screen recording
6
+ * - Audio capture
7
+ * - Screenshots
8
+ *
9
+ * While allowing:
10
+ * - Official casting (Chromecast, AirPlay, Smart TVs)
11
+ */
12
+
13
+ /**
14
+ * DRM Protection Configuration
15
+ * All features can be enabled/disabled via boolean flags
16
+ */
17
+ export interface IDRMProtectionConfig {
18
+ /**
19
+ * Master switch - enables/disables all DRM protection
20
+ * @default false
21
+ */
22
+ enabled: boolean;
23
+
24
+ /**
25
+ * Block screen recording (video capture)
26
+ * @default true (when enabled)
27
+ */
28
+ blockScreenRecording?: boolean;
29
+
30
+ /**
31
+ * Block audio capture (system audio recording)
32
+ * @default true (when enabled)
33
+ */
34
+ blockAudioCapture?: boolean;
35
+
36
+ /**
37
+ * Block screenshots
38
+ * @default true (when enabled)
39
+ */
40
+ blockScreenshots?: boolean;
41
+
42
+ /**
43
+ * Allow official casting (Chromecast, AirPlay, Smart TVs)
44
+ * @default true (when enabled)
45
+ */
46
+ allowCasting?: boolean;
47
+
48
+ /**
49
+ * Block display mirroring (prevent screen sharing apps)
50
+ * @default true (when enabled)
51
+ */
52
+ blockMirroring?: boolean;
53
+
54
+ /**
55
+ * DRM license server URL
56
+ * Required for Widevine/PlayReady/FairPlay
57
+ */
58
+ licenseServerUrl?: string;
59
+
60
+ /**
61
+ * DRM certificate URL (for FairPlay)
62
+ */
63
+ certificateUrl?: string;
64
+
65
+ /**
66
+ * Custom headers for license requests
67
+ */
68
+ licenseHeaders?: Record<string, string>;
69
+
70
+ /**
71
+ * Widevine security level (Android)
72
+ * L1 = Hardware-backed DRM (most secure)
73
+ * L3 = Software DRM
74
+ * @default 'L1'
75
+ */
76
+ widevineSecurityLevel?: 'L1' | 'L3';
77
+
78
+ /**
79
+ * Callback when screen recording is detected
80
+ */
81
+ onScreenRecordingDetected?: () => void;
82
+
83
+ /**
84
+ * Callback when screenshot is attempted
85
+ */
86
+ onScreenshotAttempted?: () => void;
87
+
88
+ /**
89
+ * Callback when mirroring is detected
90
+ */
91
+ onMirroringDetected?: () => void;
92
+
93
+ /**
94
+ * Callback when casting starts
95
+ */
96
+ onCastingStarted?: (deviceName: string, deviceType: CastDeviceType) => void;
97
+
98
+ /**
99
+ * Callback when casting ends
100
+ */
101
+ onCastingEnded?: () => void;
102
+
103
+ /**
104
+ * Callback when DRM license is acquired
105
+ */
106
+ onLicenseAcquired?: () => void;
107
+
108
+ /**
109
+ * Callback when DRM error occurs
110
+ */
111
+ onDRMError?: (error: DRMError) => void;
112
+ }
113
+
114
+ /**
115
+ * Cast device types
116
+ */
117
+ export type CastDeviceType = 'chromecast' | 'airplay' | 'smart_tv' | 'dlna' | 'miracast';
118
+
119
+ /**
120
+ * DRM Error types
121
+ */
122
+ export interface DRMError {
123
+ code: DRMErrorCode;
124
+ message: string;
125
+ platform: 'web' | 'android' | 'ios';
126
+ recoverable: boolean;
127
+ details?: any;
128
+ }
129
+
130
+ export enum DRMErrorCode {
131
+ LICENSE_REQUEST_FAILED = 'LICENSE_REQUEST_FAILED',
132
+ LICENSE_SERVER_UNREACHABLE = 'LICENSE_SERVER_UNREACHABLE',
133
+ INVALID_LICENSE = 'INVALID_LICENSE',
134
+ DEVICE_NOT_SUPPORTED = 'DEVICE_NOT_SUPPORTED',
135
+ WIDEVINE_NOT_AVAILABLE = 'WIDEVINE_NOT_AVAILABLE',
136
+ FAIRPLAY_NOT_AVAILABLE = 'FAIRPLAY_NOT_AVAILABLE',
137
+ PLAYREADY_NOT_AVAILABLE = 'PLAYREADY_NOT_AVAILABLE',
138
+ HARDWARE_DRM_NOT_AVAILABLE = 'HARDWARE_DRM_NOT_AVAILABLE',
139
+ SCREEN_RECORDING_DETECTED = 'SCREEN_RECORDING_DETECTED',
140
+ MIRRORING_DETECTED = 'MIRRORING_DETECTED',
141
+ HDMI_OUTPUT_BLOCKED = 'HDMI_OUTPUT_BLOCKED',
142
+ }
143
+
144
+ /**
145
+ * DRM Protection Status
146
+ */
147
+ export interface IDRMProtectionStatus {
148
+ /**
149
+ * Is DRM protection active
150
+ */
151
+ isProtected: boolean;
152
+
153
+ /**
154
+ * Active DRM system (Widevine, FairPlay, PlayReady)
155
+ */
156
+ drmSystem: 'widevine' | 'fairplay' | 'playready' | 'none';
157
+
158
+ /**
159
+ * Is screen recording currently blocked
160
+ */
161
+ isScreenRecordingBlocked: boolean;
162
+
163
+ /**
164
+ * Is audio capture currently blocked
165
+ */
166
+ isAudioCaptureBlocked: boolean;
167
+
168
+ /**
169
+ * Is screenshot currently blocked
170
+ */
171
+ isScreenshotBlocked: boolean;
172
+
173
+ /**
174
+ * Is casting active
175
+ */
176
+ isCasting: boolean;
177
+
178
+ /**
179
+ * Current cast device (if casting)
180
+ */
181
+ castDevice?: {
182
+ name: string;
183
+ type: CastDeviceType;
184
+ };
185
+
186
+ /**
187
+ * Is screen recording detected (may still be attempting to record)
188
+ */
189
+ screenRecordingDetected: boolean;
190
+
191
+ /**
192
+ * Is mirroring detected
193
+ */
194
+ mirroringDetected: boolean;
195
+
196
+ /**
197
+ * DRM security level (for Widevine)
198
+ */
199
+ securityLevel?: 'L1' | 'L3';
200
+
201
+ /**
202
+ * License expiration time (if available)
203
+ */
204
+ licenseExpiration?: Date;
205
+ }
206
+
207
+ /**
208
+ * DRM Protection Controller Interface
209
+ */
210
+ export interface IDRMProtection {
211
+ /**
212
+ * Initialize DRM protection
213
+ */
214
+ initialize(config: IDRMProtectionConfig): Promise<void>;
215
+
216
+ /**
217
+ * Get current protection status
218
+ */
219
+ getStatus(): IDRMProtectionStatus;
220
+
221
+ /**
222
+ * Enable/disable DRM protection
223
+ */
224
+ setEnabled(enabled: boolean): void;
225
+
226
+ /**
227
+ * Enable/disable specific protection feature
228
+ */
229
+ setFeature(feature: keyof IDRMProtectionConfig, enabled: boolean): void;
230
+
231
+ /**
232
+ * Start casting to device
233
+ */
234
+ startCasting(deviceId: string): Promise<void>;
235
+
236
+ /**
237
+ * Stop casting
238
+ */
239
+ stopCasting(): Promise<void>;
240
+
241
+ /**
242
+ * Get available cast devices
243
+ */
244
+ getAvailableCastDevices(): Promise<CastDevice[]>;
245
+
246
+ /**
247
+ * Renew DRM license
248
+ */
249
+ renewLicense(): Promise<void>;
250
+
251
+ /**
252
+ * Cleanup DRM resources
253
+ */
254
+ dispose(): void;
255
+ }
256
+
257
+ /**
258
+ * Cast device information
259
+ */
260
+ export interface CastDevice {
261
+ id: string;
262
+ name: string;
263
+ type: CastDeviceType;
264
+ isAvailable: boolean;
265
+ capabilities: {
266
+ supportsVideo: boolean;
267
+ supportsAudio: boolean;
268
+ supportsDRM: boolean;
269
+ maxResolution?: string;
270
+ };
271
+ }
272
+
273
+ /**
274
+ * DRM Key System Configuration
275
+ */
276
+ export interface DRMKeySystemConfig {
277
+ keySystem: string;
278
+ licenseServerUrl: string;
279
+ certificateUrl?: string;
280
+ headers?: Record<string, string>;
281
+ audioRobustness?: string;
282
+ videoRobustness?: string;
283
+ persistentState?: 'required' | 'optional' | 'not-allowed';
284
+ distinctiveIdentifier?: 'required' | 'optional' | 'not-allowed';
285
+ }
@@ -540,3 +540,5 @@ export interface PlayerConfig extends VideoPlayerConfig {
540
540
  volume?: number;
541
541
  chapters?: ChapterConfig;
542
542
  }
543
+
544
+ export * from './interfaces/IDRMProtection';
@@ -0,0 +1,21 @@
1
+ import { IDRMProtection, IDRMProtectionConfig, IDRMProtectionStatus, CastDevice } from '@unified-video/core';
2
+ export declare class AndroidDRMProtection implements IDRMProtection {
3
+ private config;
4
+ private status;
5
+ private listeners;
6
+ constructor();
7
+ initialize(config: IDRMProtectionConfig): Promise<void>;
8
+ private initializeWidevine;
9
+ private startMirroringDetection;
10
+ private initializeChromecast;
11
+ private setupEventListeners;
12
+ getStatus(): IDRMProtectionStatus;
13
+ setEnabled(enabled: boolean): void;
14
+ setFeature(feature: keyof IDRMProtectionConfig, enabled: boolean): void;
15
+ startCasting(deviceId: string): Promise<void>;
16
+ stopCasting(): Promise<void>;
17
+ getAvailableCastDevices(): Promise<CastDevice[]>;
18
+ renewLicense(): Promise<void>;
19
+ dispose(): void;
20
+ }
21
+ //# sourceMappingURL=AndroidDRMProtection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AndroidDRMProtection.d.ts","sourceRoot":"","sources":["../../src/drm/AndroidDRMProtection.ts"],"names":[],"mappings":"AAYA,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,oBAAoB,EACpB,UAAU,EAEX,MAAM,qBAAqB,CAAC;AAQ7B,qBAAa,oBAAqB,YAAW,cAAc;IACzD,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,SAAS,CAAa;;IAmBxB,UAAU,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;YAwD/C,kBAAkB;YAgClB,uBAAuB;YAUvB,oBAAoB;IAWlC,OAAO,CAAC,mBAAmB;IA+D3B,SAAS,IAAI,oBAAoB;IAOjC,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAQlC,UAAU,CAAC,OAAO,EAAE,MAAM,oBAAoB,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAgBjE,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO7C,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAO5B,uBAAuB,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAmBhD,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAOnC,OAAO,IAAI,IAAI;CAMhB"}