@openfin/core 40.102.1 → 40.103.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.
- package/out/GlobalOpenFin.d.ts +2 -1
- package/out/mock-alpha.d.ts +162 -5
- package/out/mock-beta.d.ts +162 -5
- package/out/mock-public.d.ts +162 -5
- package/out/{mock.d.ts → stub.d.ts} +162 -5
- package/out/{mock.js → stub.js} +57 -18
- package/package.json +3 -3
    
        package/out/GlobalOpenFin.d.ts
    CHANGED
    
    
    
        package/out/mock-alpha.d.ts
    CHANGED
    
    | @@ -3221,6 +3221,40 @@ declare class Clipboard_2 extends Base { | |
| 3221 3221 | 
             
                getAvailableFormats(type?: OpenFin_2.ClipboardSelectionType): Promise<Array<string>>;
         | 
| 3222 3222 | 
             
            }
         | 
| 3223 3223 |  | 
| 3224 | 
            +
            /**
         | 
| 3225 | 
            +
             * Generated when a copy operation is blocked through {@link OpenFin.DomainSettings}.
         | 
| 3226 | 
            +
             * @interface
         | 
| 3227 | 
            +
             */
         | 
| 3228 | 
            +
            declare type ClipboardCopyBlockedEvent = NamedEvent & {
         | 
| 3229 | 
            +
                type: 'clipboard-copy-blocked';
         | 
| 3230 | 
            +
                /**
         | 
| 3231 | 
            +
                 * URL of the Window or View that generated the event.
         | 
| 3232 | 
            +
                 */
         | 
| 3233 | 
            +
                url: string;
         | 
| 3234 | 
            +
                reason: CopyBlockedEventReason;
         | 
| 3235 | 
            +
            };
         | 
| 3236 | 
            +
             | 
| 3237 | 
            +
            /**
         | 
| 3238 | 
            +
             * Generated when a paste operation is blocked through {@link OpenFin.DomainSettings}.
         | 
| 3239 | 
            +
             * @interface
         | 
| 3240 | 
            +
             */
         | 
| 3241 | 
            +
            declare type ClipboardPasteBlockedEvent = NamedEvent & {
         | 
| 3242 | 
            +
                type: 'clipboard-paste-blocked';
         | 
| 3243 | 
            +
                /**
         | 
| 3244 | 
            +
                 * URL of the Window or View that generated the event.
         | 
| 3245 | 
            +
                 */
         | 
| 3246 | 
            +
                url: string;
         | 
| 3247 | 
            +
                reason: PasteBlockedEventReason;
         | 
| 3248 | 
            +
            };
         | 
| 3249 | 
            +
             | 
| 3250 | 
            +
            /**
         | 
| 3251 | 
            +
             * Clipboard Permissions
         | 
| 3252 | 
            +
             */
         | 
| 3253 | 
            +
            declare type ClipboardPermissions = {
         | 
| 3254 | 
            +
                copy?: CopyPermissions;
         | 
| 3255 | 
            +
                paste?: PastePermissions;
         | 
| 3256 | 
            +
            };
         | 
| 3257 | 
            +
             | 
| 3224 3258 | 
             
            /**
         | 
| 3225 3259 | 
             
             * The type of clipboard to write to, can be 'clipboard' or 'selection'.
         | 
| 3226 3260 | 
             
             * Defaults to 'clipboard'. Use 'selection' for linux only.
         | 
| @@ -3995,6 +4029,40 @@ declare type CookieOption = { | |
| 3995 4029 | 
             
                name: string;
         | 
| 3996 4030 | 
             
            };
         | 
| 3997 4031 |  | 
| 4032 | 
            +
            /**
         | 
| 4033 | 
            +
             * Reasons for a copy operation being blocked
         | 
| 4034 | 
            +
             *
         | 
| 4035 | 
            +
             * 'disabled': Copy operation is disabled through domain-based permissions.
         | 
| 4036 | 
            +
             */
         | 
| 4037 | 
            +
            declare type CopyBlockedEventReason = 'disabled';
         | 
| 4038 | 
            +
             | 
| 4039 | 
            +
            /**
         | 
| 4040 | 
            +
             * Control copy operations for a matched URL.
         | 
| 4041 | 
            +
             */
         | 
| 4042 | 
            +
            declare type CopyPermissions = {
         | 
| 4043 | 
            +
                /**
         | 
| 4044 | 
            +
                 * @defaultValue 'allowed'
         | 
| 4045 | 
            +
                 *
         | 
| 4046 | 
            +
                 * Controls the behavior for copy operations for a matched URL.
         | 
| 4047 | 
            +
                 *
         | 
| 4048 | 
            +
                 * allow: Enables all copy operations.
         | 
| 4049 | 
            +
                 * block: Disables all copy operations.
         | 
| 4050 | 
            +
                 * protect: Protects any copied content. Only URLs that have set paste.behavior: 'all-content' will be allowed to paste this content.
         | 
| 4051 | 
            +
                 */
         | 
| 4052 | 
            +
                behavior: 'allow' | 'block' | 'protect';
         | 
| 4053 | 
            +
                /**
         | 
| 4054 | 
            +
                 * Additional copy operation options
         | 
| 4055 | 
            +
                 */
         | 
| 4056 | 
            +
                options?: {
         | 
| 4057 | 
            +
                    /**
         | 
| 4058 | 
            +
                     * @defaultValue ''
         | 
| 4059 | 
            +
                     *
         | 
| 4060 | 
            +
                     * When setting behavior = 'protected' , this string will be pasted to other applications that do not have a matching URL instead of the original content.
         | 
| 4061 | 
            +
                     */
         | 
| 4062 | 
            +
                    replacementText: string;
         | 
| 4063 | 
            +
                };
         | 
| 4064 | 
            +
            };
         | 
| 4065 | 
            +
             | 
| 3998 4066 | 
             
            /**
         | 
| 3999 4067 | 
             
             * Defines and applies rounded corners for a frameless window. **NOTE:** On macOS corner is not ellipse but circle rounded by the
         | 
| 4000 4068 | 
             
             *  average of _height_ and _width_.
         | 
| @@ -4601,6 +4669,15 @@ declare class EmitterBase<EmitterEvent extends BaseEvent, EmitterEventType exten | |
| 4601 4669 | 
             
                eventNames: () => (string | symbol)[];
         | 
| 4602 4670 | 
             
                /* Excluded from this release type: emit */
         | 
| 4603 4671 | 
             
                private hasEmitter;
         | 
| 4672 | 
            +
                /**
         | 
| 4673 | 
            +
                 * Cleans up after removal of a listener, e.g. deleting any lingering deregistration handlers for a
         | 
| 4674 | 
            +
                 * `once` subscription.
         | 
| 4675 | 
            +
                 *
         | 
| 4676 | 
            +
                 * @remarks Implementing this as a `removeListener` handler ensures that direct removal of a listener
         | 
| 4677 | 
            +
                 * on the base emitter will not leak additional core handlers.  We could do this in the forwarding method,
         | 
| 4678 | 
            +
                 * which would involve less "magic," but would be more-vulnerable to accidental re-introduction of a leak.
         | 
| 4679 | 
            +
                 */
         | 
| 4680 | 
            +
                private cleanUpRemovedListener;
         | 
| 4604 4681 | 
             
                private getOrCreateEmitter;
         | 
| 4605 4682 | 
             
                listeners: (type: string | symbol) => Function[];
         | 
| 4606 4683 | 
             
                listenerCount: (type: string | symbol) => number;
         | 
| @@ -4841,7 +4918,7 @@ declare type Event_4 = (WebContentsEvents.Event<'view'> & { | |
| 4841 4918 | 
             
             */
         | 
| 4842 4919 | 
             
            declare type Event_5<Topic extends string> = {
         | 
| 4843 4920 | 
             
                topic: Topic;
         | 
| 4844 | 
            -
            } & (BlurredEvent | CertificateSelectionShownEvent | CrashedEvent_2 | DidChangeThemeColorEvent | FocusedEvent | NavigationRejectedEvent | UrlChangedEvent | DidFailLoadEvent | DidFinishLoadEvent | DidStartLoadingEvent | PageFaviconUpdatedEvent | PageTitleUpdatedEvent | ResourceLoadFailedEvent | ResourceResponseReceivedEvent | ChildContentBlockedEvent | ChildContentOpenedInBrowserEvent | ChildViewCreatedEvent | ChildWindowCreatedEvent | FileDownloadStartedEvent | FileDownloadProgressEvent | FileDownloadCompletedEvent | FoundInPageEvent | CertificateErrorEvent | ContentBlockedEvent | WillRedirectEvent);
         | 
| 4921 | 
            +
            } & (BlurredEvent | CertificateSelectionShownEvent | CrashedEvent_2 | DidChangeThemeColorEvent | FocusedEvent | NavigationRejectedEvent | UrlChangedEvent | DidFailLoadEvent | DidFinishLoadEvent | DidStartLoadingEvent | PageFaviconUpdatedEvent | PageTitleUpdatedEvent | ResourceLoadFailedEvent | ResourceResponseReceivedEvent | ChildContentBlockedEvent | ChildContentOpenedInBrowserEvent | ChildViewCreatedEvent | ChildWindowCreatedEvent | FileDownloadStartedEvent | FileDownloadProgressEvent | FileDownloadCompletedEvent | FoundInPageEvent | CertificateErrorEvent | ContentBlockedEvent | WillRedirectEvent | ClipboardCopyBlockedEvent | ClipboardPasteBlockedEvent);
         | 
| 4845 4922 |  | 
| 4846 4923 | 
             
            /**
         | 
| 4847 4924 | 
             
             *  [Union](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#union-types) containing every possible event that can be emitted by a {@link Window}.  Events are
         | 
| @@ -5598,11 +5675,8 @@ declare type FrameEventType = EventType_5; | |
| 5598 5675 | 
             
            /**
         | 
| 5599 5676 | 
             
             * @interface
         | 
| 5600 5677 | 
             
             */
         | 
| 5601 | 
            -
            declare type FrameInfo = {
         | 
| 5602 | 
            -
                name: string;
         | 
| 5603 | 
            -
                uuid: string;
         | 
| 5678 | 
            +
            declare type FrameInfo = EntityInfo & {
         | 
| 5604 5679 | 
             
                url: string;
         | 
| 5605 | 
            -
                entityType: EntityType_4;
         | 
| 5606 5680 | 
             
                parent: Identity_4;
         | 
| 5607 5681 | 
             
            };
         | 
| 5608 5682 |  | 
| @@ -9318,6 +9392,8 @@ declare namespace OpenFin_2 { | |
| 9318 9392 | 
             
                    ClientConnectionPayload,
         | 
| 9319 9393 | 
             
                    EntityInfo,
         | 
| 9320 9394 | 
             
                    EntityType_4 as EntityType,
         | 
| 9395 | 
            +
                    ScreenCaptureState,
         | 
| 9396 | 
            +
                    ScreenCapturePermission,
         | 
| 9321 9397 | 
             
                    Bounds,
         | 
| 9322 9398 | 
             
                    WindowBounds,
         | 
| 9323 9399 | 
             
                    GetBoundsOptions,
         | 
| @@ -9538,7 +9614,11 @@ declare namespace OpenFin_2 { | |
| 9538 9614 | 
             
                    StructuredContentBehavior,
         | 
| 9539 9615 | 
             
                    StructuredContentPermissions,
         | 
| 9540 9616 | 
             
                    ContentPermission,
         | 
| 9617 | 
            +
                    ScreenCaptureBehavior,
         | 
| 9541 9618 | 
             
                    PerDomainSettings,
         | 
| 9619 | 
            +
                    CopyPermissions,
         | 
| 9620 | 
            +
                    PastePermissions,
         | 
| 9621 | 
            +
                    ClipboardPermissions,
         | 
| 9542 9622 | 
             
                    DomainSettingsRule,
         | 
| 9543 9623 | 
             
                    FileDownloadBehavior,
         | 
| 9544 9624 | 
             
                    FileDownloadBehaviorNames,
         | 
| @@ -9719,6 +9799,29 @@ declare type PageTitleUpdatedEvent = NamedEvent & { | |
| 9719 9799 | 
             
                title: string;
         | 
| 9720 9800 | 
             
            };
         | 
| 9721 9801 |  | 
| 9802 | 
            +
            /**
         | 
| 9803 | 
            +
             * Reasons for a paste operation being blocked
         | 
| 9804 | 
            +
             *
         | 
| 9805 | 
            +
             * 'invalid-data': Copy protection is enabled and the pasted data is invalid.
         | 
| 9806 | 
            +
             * 'disabled': Copy protection is turned on and the current URL for this WebContent has been disabled through domain-based settings from accessing the copied data.
         | 
| 9807 | 
            +
             */
         | 
| 9808 | 
            +
            declare type PasteBlockedEventReason = 'invalid-data' | 'disabled';
         | 
| 9809 | 
            +
             | 
| 9810 | 
            +
            /**
         | 
| 9811 | 
            +
             * Control copy operations for a matched URL.
         | 
| 9812 | 
            +
             */
         | 
| 9813 | 
            +
            declare type PastePermissions = {
         | 
| 9814 | 
            +
                /**
         | 
| 9815 | 
            +
                 * @defaultValue 'non-protected-content'
         | 
| 9816 | 
            +
                 *
         | 
| 9817 | 
            +
                 * Controls the behavior for paste operations for a matched URL.
         | 
| 9818 | 
            +
                 *
         | 
| 9819 | 
            +
                 * non-protected-content: All matching URLs will be able to paste content copied from non-protected URLs.
         | 
| 9820 | 
            +
                 * all-content: All matching URLs will be able to paste content copied from both protected (copy.behavior = 'protect') and on-protected (copy.behavior = 'allow') URLs.
         | 
| 9821 | 
            +
                 */
         | 
| 9822 | 
            +
                behavior: 'non-protected-content' | 'all-content';
         | 
| 9823 | 
            +
            };
         | 
| 9824 | 
            +
             | 
| 9722 9825 | 
             
            declare type PathServeRequest = ServeRequest & {
         | 
| 9723 9826 | 
             
                path: string;
         | 
| 9724 9827 | 
             
            };
         | 
| @@ -9862,6 +9965,16 @@ declare type PerDomainSettings = { | |
| 9862 9965 | 
             
                 * {@inheritdoc ChromiumPolicies}
         | 
| 9863 9966 | 
             
                 */
         | 
| 9864 9967 | 
             
                chromiumPolicies?: ChromiumPolicies;
         | 
| 9968 | 
            +
                contentProtection?: {
         | 
| 9969 | 
            +
                    /**
         | 
| 9970 | 
            +
                     * {@inheritdoc ScreenCaptureBehavior}
         | 
| 9971 | 
            +
                     */
         | 
| 9972 | 
            +
                    screenCapture: ScreenCaptureBehavior;
         | 
| 9973 | 
            +
                    /**
         | 
| 9974 | 
            +
                     * {@inheritdoc ClipboardPermissions}
         | 
| 9975 | 
            +
                     */
         | 
| 9976 | 
            +
                    clipboard?: ClipboardPermissions;
         | 
| 9977 | 
            +
                };
         | 
| 9865 9978 | 
             
            };
         | 
| 9866 9979 |  | 
| 9867 9980 | 
             
            /**
         | 
| @@ -12512,6 +12625,10 @@ declare interface ProtocolMap extends ProtocolMapBase { | |
| 12512 12625 | 
             
                    };
         | 
| 12513 12626 | 
             
                    response: OpenFin_2.PopupResult;
         | 
| 12514 12627 | 
             
                };
         | 
| 12628 | 
            +
                'get-screen-capture-permissions': {
         | 
| 12629 | 
            +
                    request: OpenFin_2.Identity;
         | 
| 12630 | 
            +
                    response: OpenFin_2.ScreenCapturePermission;
         | 
| 12631 | 
            +
                };
         | 
| 12515 12632 | 
             
                'render-overlay': {
         | 
| 12516 12633 | 
             
                    request: {
         | 
| 12517 12634 | 
             
                        bounds: OpenFin_2.Bounds;
         | 
| @@ -13041,6 +13158,31 @@ declare type RvmLaunchOptions = { | |
| 13041 13158 | 
             
                subscribe?: (launch: LaunchEmitter) => void;
         | 
| 13042 13159 | 
             
            };
         | 
| 13043 13160 |  | 
| 13161 | 
            +
            /**
         | 
| 13162 | 
            +
             * @interface
         | 
| 13163 | 
            +
             * Controls whether this content should be allowed or blocked when capturing the screen.
         | 
| 13164 | 
            +
             */
         | 
| 13165 | 
            +
            declare type ScreenCaptureBehavior = 'allow' | 'block';
         | 
| 13166 | 
            +
             | 
| 13167 | 
            +
            /**
         | 
| 13168 | 
            +
             * Returned by getScreenCapturePermission. Includes sub-entity permission states and the resulting permission.
         | 
| 13169 | 
            +
             * @interface
         | 
| 13170 | 
            +
             */
         | 
| 13171 | 
            +
            declare type ScreenCapturePermission = {
         | 
| 13172 | 
            +
                permission: ScreenCaptureBehavior;
         | 
| 13173 | 
            +
                permissions: ScreenCaptureState[];
         | 
| 13174 | 
            +
            };
         | 
| 13175 | 
            +
             | 
| 13176 | 
            +
            /**
         | 
| 13177 | 
            +
             * screenCapture state for a given entity as defined in domain settings.
         | 
| 13178 | 
            +
             * @interface
         | 
| 13179 | 
            +
             */
         | 
| 13180 | 
            +
            declare type ScreenCaptureState = {
         | 
| 13181 | 
            +
                info: EntityInfo;
         | 
| 13182 | 
            +
                behavior: ScreenCaptureBehavior;
         | 
| 13183 | 
            +
                url: string;
         | 
| 13184 | 
            +
            };
         | 
| 13185 | 
            +
             | 
| 13044 13186 | 
             
            /**
         | 
| 13045 13187 | 
             
             * @interface
         | 
| 13046 13188 | 
             
             */
         | 
| @@ -17286,6 +17428,19 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> { | |
| 17286 17428 | 
             
                 * {@link OpenFin.WebContentsEvents event namespace}.
         | 
| 17287 17429 | 
             
                 */
         | 
| 17288 17430 | 
             
                showPopupWindow(options: OpenFin_2.PopupOptions): Promise<OpenFin_2.PopupResult>;
         | 
| 17431 | 
            +
                /**
         | 
| 17432 | 
            +
                 *
         | 
| 17433 | 
            +
                 * Get the screen capture permission for this content.
         | 
| 17434 | 
            +
                 *
         | 
| 17435 | 
            +
                 * @example
         | 
| 17436 | 
            +
                 * ```js
         | 
| 17437 | 
            +
                 * const { permission } = await fin.me.getScreenCapturePermission();
         | 
| 17438 | 
            +
                 *
         | 
| 17439 | 
            +
                 * console.log(`This content is currently ${permission}ed in screen captures.`);
         | 
| 17440 | 
            +
                 *
         | 
| 17441 | 
            +
                 * ```
         | 
| 17442 | 
            +
                 */
         | 
| 17443 | 
            +
                getScreenCapturePermission(): Promise<OpenFin_2.ScreenCapturePermission>;
         | 
| 17289 17444 | 
             
            }
         | 
| 17290 17445 |  | 
| 17291 17446 | 
             
            /**
         | 
| @@ -17324,6 +17479,8 @@ declare namespace WebContentsEvents { | |
| 17324 17479 | 
             
                    FileDownloadProgressEvent,
         | 
| 17325 17480 | 
             
                    FileDownloadCompletedEvent,
         | 
| 17326 17481 | 
             
                    ContentBlockedEvent,
         | 
| 17482 | 
            +
                    ClipboardCopyBlockedEvent,
         | 
| 17483 | 
            +
                    ClipboardPasteBlockedEvent,
         | 
| 17327 17484 | 
             
                    Event_5 as Event,
         | 
| 17328 17485 | 
             
                    WebContentsEvent,
         | 
| 17329 17486 | 
             
                    WillPropagateWebContentsEvent,
         | 
    
        package/out/mock-beta.d.ts
    CHANGED
    
    | @@ -3221,6 +3221,40 @@ declare class Clipboard_2 extends Base { | |
| 3221 3221 | 
             
                getAvailableFormats(type?: OpenFin_2.ClipboardSelectionType): Promise<Array<string>>;
         | 
| 3222 3222 | 
             
            }
         | 
| 3223 3223 |  | 
| 3224 | 
            +
            /**
         | 
| 3225 | 
            +
             * Generated when a copy operation is blocked through {@link OpenFin.DomainSettings}.
         | 
| 3226 | 
            +
             * @interface
         | 
| 3227 | 
            +
             */
         | 
| 3228 | 
            +
            declare type ClipboardCopyBlockedEvent = NamedEvent & {
         | 
| 3229 | 
            +
                type: 'clipboard-copy-blocked';
         | 
| 3230 | 
            +
                /**
         | 
| 3231 | 
            +
                 * URL of the Window or View that generated the event.
         | 
| 3232 | 
            +
                 */
         | 
| 3233 | 
            +
                url: string;
         | 
| 3234 | 
            +
                reason: CopyBlockedEventReason;
         | 
| 3235 | 
            +
            };
         | 
| 3236 | 
            +
             | 
| 3237 | 
            +
            /**
         | 
| 3238 | 
            +
             * Generated when a paste operation is blocked through {@link OpenFin.DomainSettings}.
         | 
| 3239 | 
            +
             * @interface
         | 
| 3240 | 
            +
             */
         | 
| 3241 | 
            +
            declare type ClipboardPasteBlockedEvent = NamedEvent & {
         | 
| 3242 | 
            +
                type: 'clipboard-paste-blocked';
         | 
| 3243 | 
            +
                /**
         | 
| 3244 | 
            +
                 * URL of the Window or View that generated the event.
         | 
| 3245 | 
            +
                 */
         | 
| 3246 | 
            +
                url: string;
         | 
| 3247 | 
            +
                reason: PasteBlockedEventReason;
         | 
| 3248 | 
            +
            };
         | 
| 3249 | 
            +
             | 
| 3250 | 
            +
            /**
         | 
| 3251 | 
            +
             * Clipboard Permissions
         | 
| 3252 | 
            +
             */
         | 
| 3253 | 
            +
            declare type ClipboardPermissions = {
         | 
| 3254 | 
            +
                copy?: CopyPermissions;
         | 
| 3255 | 
            +
                paste?: PastePermissions;
         | 
| 3256 | 
            +
            };
         | 
| 3257 | 
            +
             | 
| 3224 3258 | 
             
            /**
         | 
| 3225 3259 | 
             
             * The type of clipboard to write to, can be 'clipboard' or 'selection'.
         | 
| 3226 3260 | 
             
             * Defaults to 'clipboard'. Use 'selection' for linux only.
         | 
| @@ -3995,6 +4029,40 @@ declare type CookieOption = { | |
| 3995 4029 | 
             
                name: string;
         | 
| 3996 4030 | 
             
            };
         | 
| 3997 4031 |  | 
| 4032 | 
            +
            /**
         | 
| 4033 | 
            +
             * Reasons for a copy operation being blocked
         | 
| 4034 | 
            +
             *
         | 
| 4035 | 
            +
             * 'disabled': Copy operation is disabled through domain-based permissions.
         | 
| 4036 | 
            +
             */
         | 
| 4037 | 
            +
            declare type CopyBlockedEventReason = 'disabled';
         | 
| 4038 | 
            +
             | 
| 4039 | 
            +
            /**
         | 
| 4040 | 
            +
             * Control copy operations for a matched URL.
         | 
| 4041 | 
            +
             */
         | 
| 4042 | 
            +
            declare type CopyPermissions = {
         | 
| 4043 | 
            +
                /**
         | 
| 4044 | 
            +
                 * @defaultValue 'allowed'
         | 
| 4045 | 
            +
                 *
         | 
| 4046 | 
            +
                 * Controls the behavior for copy operations for a matched URL.
         | 
| 4047 | 
            +
                 *
         | 
| 4048 | 
            +
                 * allow: Enables all copy operations.
         | 
| 4049 | 
            +
                 * block: Disables all copy operations.
         | 
| 4050 | 
            +
                 * protect: Protects any copied content. Only URLs that have set paste.behavior: 'all-content' will be allowed to paste this content.
         | 
| 4051 | 
            +
                 */
         | 
| 4052 | 
            +
                behavior: 'allow' | 'block' | 'protect';
         | 
| 4053 | 
            +
                /**
         | 
| 4054 | 
            +
                 * Additional copy operation options
         | 
| 4055 | 
            +
                 */
         | 
| 4056 | 
            +
                options?: {
         | 
| 4057 | 
            +
                    /**
         | 
| 4058 | 
            +
                     * @defaultValue ''
         | 
| 4059 | 
            +
                     *
         | 
| 4060 | 
            +
                     * When setting behavior = 'protected' , this string will be pasted to other applications that do not have a matching URL instead of the original content.
         | 
| 4061 | 
            +
                     */
         | 
| 4062 | 
            +
                    replacementText: string;
         | 
| 4063 | 
            +
                };
         | 
| 4064 | 
            +
            };
         | 
| 4065 | 
            +
             | 
| 3998 4066 | 
             
            /**
         | 
| 3999 4067 | 
             
             * Defines and applies rounded corners for a frameless window. **NOTE:** On macOS corner is not ellipse but circle rounded by the
         | 
| 4000 4068 | 
             
             *  average of _height_ and _width_.
         | 
| @@ -4601,6 +4669,15 @@ declare class EmitterBase<EmitterEvent extends BaseEvent, EmitterEventType exten | |
| 4601 4669 | 
             
                eventNames: () => (string | symbol)[];
         | 
| 4602 4670 | 
             
                /* Excluded from this release type: emit */
         | 
| 4603 4671 | 
             
                private hasEmitter;
         | 
| 4672 | 
            +
                /**
         | 
| 4673 | 
            +
                 * Cleans up after removal of a listener, e.g. deleting any lingering deregistration handlers for a
         | 
| 4674 | 
            +
                 * `once` subscription.
         | 
| 4675 | 
            +
                 *
         | 
| 4676 | 
            +
                 * @remarks Implementing this as a `removeListener` handler ensures that direct removal of a listener
         | 
| 4677 | 
            +
                 * on the base emitter will not leak additional core handlers.  We could do this in the forwarding method,
         | 
| 4678 | 
            +
                 * which would involve less "magic," but would be more-vulnerable to accidental re-introduction of a leak.
         | 
| 4679 | 
            +
                 */
         | 
| 4680 | 
            +
                private cleanUpRemovedListener;
         | 
| 4604 4681 | 
             
                private getOrCreateEmitter;
         | 
| 4605 4682 | 
             
                listeners: (type: string | symbol) => Function[];
         | 
| 4606 4683 | 
             
                listenerCount: (type: string | symbol) => number;
         | 
| @@ -4841,7 +4918,7 @@ declare type Event_4 = (WebContentsEvents.Event<'view'> & { | |
| 4841 4918 | 
             
             */
         | 
| 4842 4919 | 
             
            declare type Event_5<Topic extends string> = {
         | 
| 4843 4920 | 
             
                topic: Topic;
         | 
| 4844 | 
            -
            } & (BlurredEvent | CertificateSelectionShownEvent | CrashedEvent_2 | DidChangeThemeColorEvent | FocusedEvent | NavigationRejectedEvent | UrlChangedEvent | DidFailLoadEvent | DidFinishLoadEvent | DidStartLoadingEvent | PageFaviconUpdatedEvent | PageTitleUpdatedEvent | ResourceLoadFailedEvent | ResourceResponseReceivedEvent | ChildContentBlockedEvent | ChildContentOpenedInBrowserEvent | ChildViewCreatedEvent | ChildWindowCreatedEvent | FileDownloadStartedEvent | FileDownloadProgressEvent | FileDownloadCompletedEvent | FoundInPageEvent | CertificateErrorEvent | ContentBlockedEvent | WillRedirectEvent);
         | 
| 4921 | 
            +
            } & (BlurredEvent | CertificateSelectionShownEvent | CrashedEvent_2 | DidChangeThemeColorEvent | FocusedEvent | NavigationRejectedEvent | UrlChangedEvent | DidFailLoadEvent | DidFinishLoadEvent | DidStartLoadingEvent | PageFaviconUpdatedEvent | PageTitleUpdatedEvent | ResourceLoadFailedEvent | ResourceResponseReceivedEvent | ChildContentBlockedEvent | ChildContentOpenedInBrowserEvent | ChildViewCreatedEvent | ChildWindowCreatedEvent | FileDownloadStartedEvent | FileDownloadProgressEvent | FileDownloadCompletedEvent | FoundInPageEvent | CertificateErrorEvent | ContentBlockedEvent | WillRedirectEvent | ClipboardCopyBlockedEvent | ClipboardPasteBlockedEvent);
         | 
| 4845 4922 |  | 
| 4846 4923 | 
             
            /**
         | 
| 4847 4924 | 
             
             *  [Union](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#union-types) containing every possible event that can be emitted by a {@link Window}.  Events are
         | 
| @@ -5598,11 +5675,8 @@ declare type FrameEventType = EventType_5; | |
| 5598 5675 | 
             
            /**
         | 
| 5599 5676 | 
             
             * @interface
         | 
| 5600 5677 | 
             
             */
         | 
| 5601 | 
            -
            declare type FrameInfo = {
         | 
| 5602 | 
            -
                name: string;
         | 
| 5603 | 
            -
                uuid: string;
         | 
| 5678 | 
            +
            declare type FrameInfo = EntityInfo & {
         | 
| 5604 5679 | 
             
                url: string;
         | 
| 5605 | 
            -
                entityType: EntityType_4;
         | 
| 5606 5680 | 
             
                parent: Identity_4;
         | 
| 5607 5681 | 
             
            };
         | 
| 5608 5682 |  | 
| @@ -9318,6 +9392,8 @@ declare namespace OpenFin_2 { | |
| 9318 9392 | 
             
                    ClientConnectionPayload,
         | 
| 9319 9393 | 
             
                    EntityInfo,
         | 
| 9320 9394 | 
             
                    EntityType_4 as EntityType,
         | 
| 9395 | 
            +
                    ScreenCaptureState,
         | 
| 9396 | 
            +
                    ScreenCapturePermission,
         | 
| 9321 9397 | 
             
                    Bounds,
         | 
| 9322 9398 | 
             
                    WindowBounds,
         | 
| 9323 9399 | 
             
                    GetBoundsOptions,
         | 
| @@ -9538,7 +9614,11 @@ declare namespace OpenFin_2 { | |
| 9538 9614 | 
             
                    StructuredContentBehavior,
         | 
| 9539 9615 | 
             
                    StructuredContentPermissions,
         | 
| 9540 9616 | 
             
                    ContentPermission,
         | 
| 9617 | 
            +
                    ScreenCaptureBehavior,
         | 
| 9541 9618 | 
             
                    PerDomainSettings,
         | 
| 9619 | 
            +
                    CopyPermissions,
         | 
| 9620 | 
            +
                    PastePermissions,
         | 
| 9621 | 
            +
                    ClipboardPermissions,
         | 
| 9542 9622 | 
             
                    DomainSettingsRule,
         | 
| 9543 9623 | 
             
                    FileDownloadBehavior,
         | 
| 9544 9624 | 
             
                    FileDownloadBehaviorNames,
         | 
| @@ -9719,6 +9799,29 @@ declare type PageTitleUpdatedEvent = NamedEvent & { | |
| 9719 9799 | 
             
                title: string;
         | 
| 9720 9800 | 
             
            };
         | 
| 9721 9801 |  | 
| 9802 | 
            +
            /**
         | 
| 9803 | 
            +
             * Reasons for a paste operation being blocked
         | 
| 9804 | 
            +
             *
         | 
| 9805 | 
            +
             * 'invalid-data': Copy protection is enabled and the pasted data is invalid.
         | 
| 9806 | 
            +
             * 'disabled': Copy protection is turned on and the current URL for this WebContent has been disabled through domain-based settings from accessing the copied data.
         | 
| 9807 | 
            +
             */
         | 
| 9808 | 
            +
            declare type PasteBlockedEventReason = 'invalid-data' | 'disabled';
         | 
| 9809 | 
            +
             | 
| 9810 | 
            +
            /**
         | 
| 9811 | 
            +
             * Control copy operations for a matched URL.
         | 
| 9812 | 
            +
             */
         | 
| 9813 | 
            +
            declare type PastePermissions = {
         | 
| 9814 | 
            +
                /**
         | 
| 9815 | 
            +
                 * @defaultValue 'non-protected-content'
         | 
| 9816 | 
            +
                 *
         | 
| 9817 | 
            +
                 * Controls the behavior for paste operations for a matched URL.
         | 
| 9818 | 
            +
                 *
         | 
| 9819 | 
            +
                 * non-protected-content: All matching URLs will be able to paste content copied from non-protected URLs.
         | 
| 9820 | 
            +
                 * all-content: All matching URLs will be able to paste content copied from both protected (copy.behavior = 'protect') and on-protected (copy.behavior = 'allow') URLs.
         | 
| 9821 | 
            +
                 */
         | 
| 9822 | 
            +
                behavior: 'non-protected-content' | 'all-content';
         | 
| 9823 | 
            +
            };
         | 
| 9824 | 
            +
             | 
| 9722 9825 | 
             
            declare type PathServeRequest = ServeRequest & {
         | 
| 9723 9826 | 
             
                path: string;
         | 
| 9724 9827 | 
             
            };
         | 
| @@ -9862,6 +9965,16 @@ declare type PerDomainSettings = { | |
| 9862 9965 | 
             
                 * {@inheritdoc ChromiumPolicies}
         | 
| 9863 9966 | 
             
                 */
         | 
| 9864 9967 | 
             
                chromiumPolicies?: ChromiumPolicies;
         | 
| 9968 | 
            +
                contentProtection?: {
         | 
| 9969 | 
            +
                    /**
         | 
| 9970 | 
            +
                     * {@inheritdoc ScreenCaptureBehavior}
         | 
| 9971 | 
            +
                     */
         | 
| 9972 | 
            +
                    screenCapture: ScreenCaptureBehavior;
         | 
| 9973 | 
            +
                    /**
         | 
| 9974 | 
            +
                     * {@inheritdoc ClipboardPermissions}
         | 
| 9975 | 
            +
                     */
         | 
| 9976 | 
            +
                    clipboard?: ClipboardPermissions;
         | 
| 9977 | 
            +
                };
         | 
| 9865 9978 | 
             
            };
         | 
| 9866 9979 |  | 
| 9867 9980 | 
             
            /**
         | 
| @@ -12512,6 +12625,10 @@ declare interface ProtocolMap extends ProtocolMapBase { | |
| 12512 12625 | 
             
                    };
         | 
| 12513 12626 | 
             
                    response: OpenFin_2.PopupResult;
         | 
| 12514 12627 | 
             
                };
         | 
| 12628 | 
            +
                'get-screen-capture-permissions': {
         | 
| 12629 | 
            +
                    request: OpenFin_2.Identity;
         | 
| 12630 | 
            +
                    response: OpenFin_2.ScreenCapturePermission;
         | 
| 12631 | 
            +
                };
         | 
| 12515 12632 | 
             
                'render-overlay': {
         | 
| 12516 12633 | 
             
                    request: {
         | 
| 12517 12634 | 
             
                        bounds: OpenFin_2.Bounds;
         | 
| @@ -13041,6 +13158,31 @@ declare type RvmLaunchOptions = { | |
| 13041 13158 | 
             
                subscribe?: (launch: LaunchEmitter) => void;
         | 
| 13042 13159 | 
             
            };
         | 
| 13043 13160 |  | 
| 13161 | 
            +
            /**
         | 
| 13162 | 
            +
             * @interface
         | 
| 13163 | 
            +
             * Controls whether this content should be allowed or blocked when capturing the screen.
         | 
| 13164 | 
            +
             */
         | 
| 13165 | 
            +
            declare type ScreenCaptureBehavior = 'allow' | 'block';
         | 
| 13166 | 
            +
             | 
| 13167 | 
            +
            /**
         | 
| 13168 | 
            +
             * Returned by getScreenCapturePermission. Includes sub-entity permission states and the resulting permission.
         | 
| 13169 | 
            +
             * @interface
         | 
| 13170 | 
            +
             */
         | 
| 13171 | 
            +
            declare type ScreenCapturePermission = {
         | 
| 13172 | 
            +
                permission: ScreenCaptureBehavior;
         | 
| 13173 | 
            +
                permissions: ScreenCaptureState[];
         | 
| 13174 | 
            +
            };
         | 
| 13175 | 
            +
             | 
| 13176 | 
            +
            /**
         | 
| 13177 | 
            +
             * screenCapture state for a given entity as defined in domain settings.
         | 
| 13178 | 
            +
             * @interface
         | 
| 13179 | 
            +
             */
         | 
| 13180 | 
            +
            declare type ScreenCaptureState = {
         | 
| 13181 | 
            +
                info: EntityInfo;
         | 
| 13182 | 
            +
                behavior: ScreenCaptureBehavior;
         | 
| 13183 | 
            +
                url: string;
         | 
| 13184 | 
            +
            };
         | 
| 13185 | 
            +
             | 
| 13044 13186 | 
             
            /**
         | 
| 13045 13187 | 
             
             * @interface
         | 
| 13046 13188 | 
             
             */
         | 
| @@ -17286,6 +17428,19 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> { | |
| 17286 17428 | 
             
                 * {@link OpenFin.WebContentsEvents event namespace}.
         | 
| 17287 17429 | 
             
                 */
         | 
| 17288 17430 | 
             
                showPopupWindow(options: OpenFin_2.PopupOptions): Promise<OpenFin_2.PopupResult>;
         | 
| 17431 | 
            +
                /**
         | 
| 17432 | 
            +
                 *
         | 
| 17433 | 
            +
                 * Get the screen capture permission for this content.
         | 
| 17434 | 
            +
                 *
         | 
| 17435 | 
            +
                 * @example
         | 
| 17436 | 
            +
                 * ```js
         | 
| 17437 | 
            +
                 * const { permission } = await fin.me.getScreenCapturePermission();
         | 
| 17438 | 
            +
                 *
         | 
| 17439 | 
            +
                 * console.log(`This content is currently ${permission}ed in screen captures.`);
         | 
| 17440 | 
            +
                 *
         | 
| 17441 | 
            +
                 * ```
         | 
| 17442 | 
            +
                 */
         | 
| 17443 | 
            +
                getScreenCapturePermission(): Promise<OpenFin_2.ScreenCapturePermission>;
         | 
| 17289 17444 | 
             
            }
         | 
| 17290 17445 |  | 
| 17291 17446 | 
             
            /**
         | 
| @@ -17324,6 +17479,8 @@ declare namespace WebContentsEvents { | |
| 17324 17479 | 
             
                    FileDownloadProgressEvent,
         | 
| 17325 17480 | 
             
                    FileDownloadCompletedEvent,
         | 
| 17326 17481 | 
             
                    ContentBlockedEvent,
         | 
| 17482 | 
            +
                    ClipboardCopyBlockedEvent,
         | 
| 17483 | 
            +
                    ClipboardPasteBlockedEvent,
         | 
| 17327 17484 | 
             
                    Event_5 as Event,
         | 
| 17328 17485 | 
             
                    WebContentsEvent,
         | 
| 17329 17486 | 
             
                    WillPropagateWebContentsEvent,
         | 
    
        package/out/mock-public.d.ts
    CHANGED
    
    | @@ -3221,6 +3221,40 @@ declare class Clipboard_2 extends Base { | |
| 3221 3221 | 
             
                getAvailableFormats(type?: OpenFin_2.ClipboardSelectionType): Promise<Array<string>>;
         | 
| 3222 3222 | 
             
            }
         | 
| 3223 3223 |  | 
| 3224 | 
            +
            /**
         | 
| 3225 | 
            +
             * Generated when a copy operation is blocked through {@link OpenFin.DomainSettings}.
         | 
| 3226 | 
            +
             * @interface
         | 
| 3227 | 
            +
             */
         | 
| 3228 | 
            +
            declare type ClipboardCopyBlockedEvent = NamedEvent & {
         | 
| 3229 | 
            +
                type: 'clipboard-copy-blocked';
         | 
| 3230 | 
            +
                /**
         | 
| 3231 | 
            +
                 * URL of the Window or View that generated the event.
         | 
| 3232 | 
            +
                 */
         | 
| 3233 | 
            +
                url: string;
         | 
| 3234 | 
            +
                reason: CopyBlockedEventReason;
         | 
| 3235 | 
            +
            };
         | 
| 3236 | 
            +
             | 
| 3237 | 
            +
            /**
         | 
| 3238 | 
            +
             * Generated when a paste operation is blocked through {@link OpenFin.DomainSettings}.
         | 
| 3239 | 
            +
             * @interface
         | 
| 3240 | 
            +
             */
         | 
| 3241 | 
            +
            declare type ClipboardPasteBlockedEvent = NamedEvent & {
         | 
| 3242 | 
            +
                type: 'clipboard-paste-blocked';
         | 
| 3243 | 
            +
                /**
         | 
| 3244 | 
            +
                 * URL of the Window or View that generated the event.
         | 
| 3245 | 
            +
                 */
         | 
| 3246 | 
            +
                url: string;
         | 
| 3247 | 
            +
                reason: PasteBlockedEventReason;
         | 
| 3248 | 
            +
            };
         | 
| 3249 | 
            +
             | 
| 3250 | 
            +
            /**
         | 
| 3251 | 
            +
             * Clipboard Permissions
         | 
| 3252 | 
            +
             */
         | 
| 3253 | 
            +
            declare type ClipboardPermissions = {
         | 
| 3254 | 
            +
                copy?: CopyPermissions;
         | 
| 3255 | 
            +
                paste?: PastePermissions;
         | 
| 3256 | 
            +
            };
         | 
| 3257 | 
            +
             | 
| 3224 3258 | 
             
            /**
         | 
| 3225 3259 | 
             
             * The type of clipboard to write to, can be 'clipboard' or 'selection'.
         | 
| 3226 3260 | 
             
             * Defaults to 'clipboard'. Use 'selection' for linux only.
         | 
| @@ -3995,6 +4029,40 @@ declare type CookieOption = { | |
| 3995 4029 | 
             
                name: string;
         | 
| 3996 4030 | 
             
            };
         | 
| 3997 4031 |  | 
| 4032 | 
            +
            /**
         | 
| 4033 | 
            +
             * Reasons for a copy operation being blocked
         | 
| 4034 | 
            +
             *
         | 
| 4035 | 
            +
             * 'disabled': Copy operation is disabled through domain-based permissions.
         | 
| 4036 | 
            +
             */
         | 
| 4037 | 
            +
            declare type CopyBlockedEventReason = 'disabled';
         | 
| 4038 | 
            +
             | 
| 4039 | 
            +
            /**
         | 
| 4040 | 
            +
             * Control copy operations for a matched URL.
         | 
| 4041 | 
            +
             */
         | 
| 4042 | 
            +
            declare type CopyPermissions = {
         | 
| 4043 | 
            +
                /**
         | 
| 4044 | 
            +
                 * @defaultValue 'allowed'
         | 
| 4045 | 
            +
                 *
         | 
| 4046 | 
            +
                 * Controls the behavior for copy operations for a matched URL.
         | 
| 4047 | 
            +
                 *
         | 
| 4048 | 
            +
                 * allow: Enables all copy operations.
         | 
| 4049 | 
            +
                 * block: Disables all copy operations.
         | 
| 4050 | 
            +
                 * protect: Protects any copied content. Only URLs that have set paste.behavior: 'all-content' will be allowed to paste this content.
         | 
| 4051 | 
            +
                 */
         | 
| 4052 | 
            +
                behavior: 'allow' | 'block' | 'protect';
         | 
| 4053 | 
            +
                /**
         | 
| 4054 | 
            +
                 * Additional copy operation options
         | 
| 4055 | 
            +
                 */
         | 
| 4056 | 
            +
                options?: {
         | 
| 4057 | 
            +
                    /**
         | 
| 4058 | 
            +
                     * @defaultValue ''
         | 
| 4059 | 
            +
                     *
         | 
| 4060 | 
            +
                     * When setting behavior = 'protected' , this string will be pasted to other applications that do not have a matching URL instead of the original content.
         | 
| 4061 | 
            +
                     */
         | 
| 4062 | 
            +
                    replacementText: string;
         | 
| 4063 | 
            +
                };
         | 
| 4064 | 
            +
            };
         | 
| 4065 | 
            +
             | 
| 3998 4066 | 
             
            /**
         | 
| 3999 4067 | 
             
             * Defines and applies rounded corners for a frameless window. **NOTE:** On macOS corner is not ellipse but circle rounded by the
         | 
| 4000 4068 | 
             
             *  average of _height_ and _width_.
         | 
| @@ -4601,6 +4669,15 @@ declare class EmitterBase<EmitterEvent extends BaseEvent, EmitterEventType exten | |
| 4601 4669 | 
             
                eventNames: () => (string | symbol)[];
         | 
| 4602 4670 | 
             
                /* Excluded from this release type: emit */
         | 
| 4603 4671 | 
             
                private hasEmitter;
         | 
| 4672 | 
            +
                /**
         | 
| 4673 | 
            +
                 * Cleans up after removal of a listener, e.g. deleting any lingering deregistration handlers for a
         | 
| 4674 | 
            +
                 * `once` subscription.
         | 
| 4675 | 
            +
                 *
         | 
| 4676 | 
            +
                 * @remarks Implementing this as a `removeListener` handler ensures that direct removal of a listener
         | 
| 4677 | 
            +
                 * on the base emitter will not leak additional core handlers.  We could do this in the forwarding method,
         | 
| 4678 | 
            +
                 * which would involve less "magic," but would be more-vulnerable to accidental re-introduction of a leak.
         | 
| 4679 | 
            +
                 */
         | 
| 4680 | 
            +
                private cleanUpRemovedListener;
         | 
| 4604 4681 | 
             
                private getOrCreateEmitter;
         | 
| 4605 4682 | 
             
                listeners: (type: string | symbol) => Function[];
         | 
| 4606 4683 | 
             
                listenerCount: (type: string | symbol) => number;
         | 
| @@ -4841,7 +4918,7 @@ declare type Event_4 = (WebContentsEvents.Event<'view'> & { | |
| 4841 4918 | 
             
             */
         | 
| 4842 4919 | 
             
            declare type Event_5<Topic extends string> = {
         | 
| 4843 4920 | 
             
                topic: Topic;
         | 
| 4844 | 
            -
            } & (BlurredEvent | CertificateSelectionShownEvent | CrashedEvent_2 | DidChangeThemeColorEvent | FocusedEvent | NavigationRejectedEvent | UrlChangedEvent | DidFailLoadEvent | DidFinishLoadEvent | DidStartLoadingEvent | PageFaviconUpdatedEvent | PageTitleUpdatedEvent | ResourceLoadFailedEvent | ResourceResponseReceivedEvent | ChildContentBlockedEvent | ChildContentOpenedInBrowserEvent | ChildViewCreatedEvent | ChildWindowCreatedEvent | FileDownloadStartedEvent | FileDownloadProgressEvent | FileDownloadCompletedEvent | FoundInPageEvent | CertificateErrorEvent | ContentBlockedEvent | WillRedirectEvent);
         | 
| 4921 | 
            +
            } & (BlurredEvent | CertificateSelectionShownEvent | CrashedEvent_2 | DidChangeThemeColorEvent | FocusedEvent | NavigationRejectedEvent | UrlChangedEvent | DidFailLoadEvent | DidFinishLoadEvent | DidStartLoadingEvent | PageFaviconUpdatedEvent | PageTitleUpdatedEvent | ResourceLoadFailedEvent | ResourceResponseReceivedEvent | ChildContentBlockedEvent | ChildContentOpenedInBrowserEvent | ChildViewCreatedEvent | ChildWindowCreatedEvent | FileDownloadStartedEvent | FileDownloadProgressEvent | FileDownloadCompletedEvent | FoundInPageEvent | CertificateErrorEvent | ContentBlockedEvent | WillRedirectEvent | ClipboardCopyBlockedEvent | ClipboardPasteBlockedEvent);
         | 
| 4845 4922 |  | 
| 4846 4923 | 
             
            /**
         | 
| 4847 4924 | 
             
             *  [Union](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#union-types) containing every possible event that can be emitted by a {@link Window}.  Events are
         | 
| @@ -5598,11 +5675,8 @@ declare type FrameEventType = EventType_5; | |
| 5598 5675 | 
             
            /**
         | 
| 5599 5676 | 
             
             * @interface
         | 
| 5600 5677 | 
             
             */
         | 
| 5601 | 
            -
            declare type FrameInfo = {
         | 
| 5602 | 
            -
                name: string;
         | 
| 5603 | 
            -
                uuid: string;
         | 
| 5678 | 
            +
            declare type FrameInfo = EntityInfo & {
         | 
| 5604 5679 | 
             
                url: string;
         | 
| 5605 | 
            -
                entityType: EntityType_4;
         | 
| 5606 5680 | 
             
                parent: Identity_4;
         | 
| 5607 5681 | 
             
            };
         | 
| 5608 5682 |  | 
| @@ -9318,6 +9392,8 @@ declare namespace OpenFin_2 { | |
| 9318 9392 | 
             
                    ClientConnectionPayload,
         | 
| 9319 9393 | 
             
                    EntityInfo,
         | 
| 9320 9394 | 
             
                    EntityType_4 as EntityType,
         | 
| 9395 | 
            +
                    ScreenCaptureState,
         | 
| 9396 | 
            +
                    ScreenCapturePermission,
         | 
| 9321 9397 | 
             
                    Bounds,
         | 
| 9322 9398 | 
             
                    WindowBounds,
         | 
| 9323 9399 | 
             
                    GetBoundsOptions,
         | 
| @@ -9538,7 +9614,11 @@ declare namespace OpenFin_2 { | |
| 9538 9614 | 
             
                    StructuredContentBehavior,
         | 
| 9539 9615 | 
             
                    StructuredContentPermissions,
         | 
| 9540 9616 | 
             
                    ContentPermission,
         | 
| 9617 | 
            +
                    ScreenCaptureBehavior,
         | 
| 9541 9618 | 
             
                    PerDomainSettings,
         | 
| 9619 | 
            +
                    CopyPermissions,
         | 
| 9620 | 
            +
                    PastePermissions,
         | 
| 9621 | 
            +
                    ClipboardPermissions,
         | 
| 9542 9622 | 
             
                    DomainSettingsRule,
         | 
| 9543 9623 | 
             
                    FileDownloadBehavior,
         | 
| 9544 9624 | 
             
                    FileDownloadBehaviorNames,
         | 
| @@ -9719,6 +9799,29 @@ declare type PageTitleUpdatedEvent = NamedEvent & { | |
| 9719 9799 | 
             
                title: string;
         | 
| 9720 9800 | 
             
            };
         | 
| 9721 9801 |  | 
| 9802 | 
            +
            /**
         | 
| 9803 | 
            +
             * Reasons for a paste operation being blocked
         | 
| 9804 | 
            +
             *
         | 
| 9805 | 
            +
             * 'invalid-data': Copy protection is enabled and the pasted data is invalid.
         | 
| 9806 | 
            +
             * 'disabled': Copy protection is turned on and the current URL for this WebContent has been disabled through domain-based settings from accessing the copied data.
         | 
| 9807 | 
            +
             */
         | 
| 9808 | 
            +
            declare type PasteBlockedEventReason = 'invalid-data' | 'disabled';
         | 
| 9809 | 
            +
             | 
| 9810 | 
            +
            /**
         | 
| 9811 | 
            +
             * Control copy operations for a matched URL.
         | 
| 9812 | 
            +
             */
         | 
| 9813 | 
            +
            declare type PastePermissions = {
         | 
| 9814 | 
            +
                /**
         | 
| 9815 | 
            +
                 * @defaultValue 'non-protected-content'
         | 
| 9816 | 
            +
                 *
         | 
| 9817 | 
            +
                 * Controls the behavior for paste operations for a matched URL.
         | 
| 9818 | 
            +
                 *
         | 
| 9819 | 
            +
                 * non-protected-content: All matching URLs will be able to paste content copied from non-protected URLs.
         | 
| 9820 | 
            +
                 * all-content: All matching URLs will be able to paste content copied from both protected (copy.behavior = 'protect') and on-protected (copy.behavior = 'allow') URLs.
         | 
| 9821 | 
            +
                 */
         | 
| 9822 | 
            +
                behavior: 'non-protected-content' | 'all-content';
         | 
| 9823 | 
            +
            };
         | 
| 9824 | 
            +
             | 
| 9722 9825 | 
             
            declare type PathServeRequest = ServeRequest & {
         | 
| 9723 9826 | 
             
                path: string;
         | 
| 9724 9827 | 
             
            };
         | 
| @@ -9862,6 +9965,16 @@ declare type PerDomainSettings = { | |
| 9862 9965 | 
             
                 * {@inheritdoc ChromiumPolicies}
         | 
| 9863 9966 | 
             
                 */
         | 
| 9864 9967 | 
             
                chromiumPolicies?: ChromiumPolicies;
         | 
| 9968 | 
            +
                contentProtection?: {
         | 
| 9969 | 
            +
                    /**
         | 
| 9970 | 
            +
                     * {@inheritdoc ScreenCaptureBehavior}
         | 
| 9971 | 
            +
                     */
         | 
| 9972 | 
            +
                    screenCapture: ScreenCaptureBehavior;
         | 
| 9973 | 
            +
                    /**
         | 
| 9974 | 
            +
                     * {@inheritdoc ClipboardPermissions}
         | 
| 9975 | 
            +
                     */
         | 
| 9976 | 
            +
                    clipboard?: ClipboardPermissions;
         | 
| 9977 | 
            +
                };
         | 
| 9865 9978 | 
             
            };
         | 
| 9866 9979 |  | 
| 9867 9980 | 
             
            /**
         | 
| @@ -12512,6 +12625,10 @@ declare interface ProtocolMap extends ProtocolMapBase { | |
| 12512 12625 | 
             
                    };
         | 
| 12513 12626 | 
             
                    response: OpenFin_2.PopupResult;
         | 
| 12514 12627 | 
             
                };
         | 
| 12628 | 
            +
                'get-screen-capture-permissions': {
         | 
| 12629 | 
            +
                    request: OpenFin_2.Identity;
         | 
| 12630 | 
            +
                    response: OpenFin_2.ScreenCapturePermission;
         | 
| 12631 | 
            +
                };
         | 
| 12515 12632 | 
             
                'render-overlay': {
         | 
| 12516 12633 | 
             
                    request: {
         | 
| 12517 12634 | 
             
                        bounds: OpenFin_2.Bounds;
         | 
| @@ -13041,6 +13158,31 @@ declare type RvmLaunchOptions = { | |
| 13041 13158 | 
             
                subscribe?: (launch: LaunchEmitter) => void;
         | 
| 13042 13159 | 
             
            };
         | 
| 13043 13160 |  | 
| 13161 | 
            +
            /**
         | 
| 13162 | 
            +
             * @interface
         | 
| 13163 | 
            +
             * Controls whether this content should be allowed or blocked when capturing the screen.
         | 
| 13164 | 
            +
             */
         | 
| 13165 | 
            +
            declare type ScreenCaptureBehavior = 'allow' | 'block';
         | 
| 13166 | 
            +
             | 
| 13167 | 
            +
            /**
         | 
| 13168 | 
            +
             * Returned by getScreenCapturePermission. Includes sub-entity permission states and the resulting permission.
         | 
| 13169 | 
            +
             * @interface
         | 
| 13170 | 
            +
             */
         | 
| 13171 | 
            +
            declare type ScreenCapturePermission = {
         | 
| 13172 | 
            +
                permission: ScreenCaptureBehavior;
         | 
| 13173 | 
            +
                permissions: ScreenCaptureState[];
         | 
| 13174 | 
            +
            };
         | 
| 13175 | 
            +
             | 
| 13176 | 
            +
            /**
         | 
| 13177 | 
            +
             * screenCapture state for a given entity as defined in domain settings.
         | 
| 13178 | 
            +
             * @interface
         | 
| 13179 | 
            +
             */
         | 
| 13180 | 
            +
            declare type ScreenCaptureState = {
         | 
| 13181 | 
            +
                info: EntityInfo;
         | 
| 13182 | 
            +
                behavior: ScreenCaptureBehavior;
         | 
| 13183 | 
            +
                url: string;
         | 
| 13184 | 
            +
            };
         | 
| 13185 | 
            +
             | 
| 13044 13186 | 
             
            /**
         | 
| 13045 13187 | 
             
             * @interface
         | 
| 13046 13188 | 
             
             */
         | 
| @@ -17286,6 +17428,19 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> { | |
| 17286 17428 | 
             
                 * {@link OpenFin.WebContentsEvents event namespace}.
         | 
| 17287 17429 | 
             
                 */
         | 
| 17288 17430 | 
             
                showPopupWindow(options: OpenFin_2.PopupOptions): Promise<OpenFin_2.PopupResult>;
         | 
| 17431 | 
            +
                /**
         | 
| 17432 | 
            +
                 *
         | 
| 17433 | 
            +
                 * Get the screen capture permission for this content.
         | 
| 17434 | 
            +
                 *
         | 
| 17435 | 
            +
                 * @example
         | 
| 17436 | 
            +
                 * ```js
         | 
| 17437 | 
            +
                 * const { permission } = await fin.me.getScreenCapturePermission();
         | 
| 17438 | 
            +
                 *
         | 
| 17439 | 
            +
                 * console.log(`This content is currently ${permission}ed in screen captures.`);
         | 
| 17440 | 
            +
                 *
         | 
| 17441 | 
            +
                 * ```
         | 
| 17442 | 
            +
                 */
         | 
| 17443 | 
            +
                getScreenCapturePermission(): Promise<OpenFin_2.ScreenCapturePermission>;
         | 
| 17289 17444 | 
             
            }
         | 
| 17290 17445 |  | 
| 17291 17446 | 
             
            /**
         | 
| @@ -17324,6 +17479,8 @@ declare namespace WebContentsEvents { | |
| 17324 17479 | 
             
                    FileDownloadProgressEvent,
         | 
| 17325 17480 | 
             
                    FileDownloadCompletedEvent,
         | 
| 17326 17481 | 
             
                    ContentBlockedEvent,
         | 
| 17482 | 
            +
                    ClipboardCopyBlockedEvent,
         | 
| 17483 | 
            +
                    ClipboardPasteBlockedEvent,
         | 
| 17327 17484 | 
             
                    Event_5 as Event,
         | 
| 17328 17485 | 
             
                    WebContentsEvent,
         | 
| 17329 17486 | 
             
                    WillPropagateWebContentsEvent,
         | 
| @@ -3277,6 +3277,40 @@ declare class Clipboard_2 extends Base { | |
| 3277 3277 | 
             
                getAvailableFormats(type?: OpenFin_2.ClipboardSelectionType): Promise<Array<string>>;
         | 
| 3278 3278 | 
             
            }
         | 
| 3279 3279 |  | 
| 3280 | 
            +
            /**
         | 
| 3281 | 
            +
             * Generated when a copy operation is blocked through {@link OpenFin.DomainSettings}.
         | 
| 3282 | 
            +
             * @interface
         | 
| 3283 | 
            +
             */
         | 
| 3284 | 
            +
            declare type ClipboardCopyBlockedEvent = NamedEvent & {
         | 
| 3285 | 
            +
                type: 'clipboard-copy-blocked';
         | 
| 3286 | 
            +
                /**
         | 
| 3287 | 
            +
                 * URL of the Window or View that generated the event.
         | 
| 3288 | 
            +
                 */
         | 
| 3289 | 
            +
                url: string;
         | 
| 3290 | 
            +
                reason: CopyBlockedEventReason;
         | 
| 3291 | 
            +
            };
         | 
| 3292 | 
            +
             | 
| 3293 | 
            +
            /**
         | 
| 3294 | 
            +
             * Generated when a paste operation is blocked through {@link OpenFin.DomainSettings}.
         | 
| 3295 | 
            +
             * @interface
         | 
| 3296 | 
            +
             */
         | 
| 3297 | 
            +
            declare type ClipboardPasteBlockedEvent = NamedEvent & {
         | 
| 3298 | 
            +
                type: 'clipboard-paste-blocked';
         | 
| 3299 | 
            +
                /**
         | 
| 3300 | 
            +
                 * URL of the Window or View that generated the event.
         | 
| 3301 | 
            +
                 */
         | 
| 3302 | 
            +
                url: string;
         | 
| 3303 | 
            +
                reason: PasteBlockedEventReason;
         | 
| 3304 | 
            +
            };
         | 
| 3305 | 
            +
             | 
| 3306 | 
            +
            /**
         | 
| 3307 | 
            +
             * Clipboard Permissions
         | 
| 3308 | 
            +
             */
         | 
| 3309 | 
            +
            declare type ClipboardPermissions = {
         | 
| 3310 | 
            +
                copy?: CopyPermissions;
         | 
| 3311 | 
            +
                paste?: PastePermissions;
         | 
| 3312 | 
            +
            };
         | 
| 3313 | 
            +
             | 
| 3280 3314 | 
             
            /**
         | 
| 3281 3315 | 
             
             * The type of clipboard to write to, can be 'clipboard' or 'selection'.
         | 
| 3282 3316 | 
             
             * Defaults to 'clipboard'. Use 'selection' for linux only.
         | 
| @@ -4054,6 +4088,40 @@ declare type CookieOption = { | |
| 4054 4088 | 
             
                name: string;
         | 
| 4055 4089 | 
             
            };
         | 
| 4056 4090 |  | 
| 4091 | 
            +
            /**
         | 
| 4092 | 
            +
             * Reasons for a copy operation being blocked
         | 
| 4093 | 
            +
             *
         | 
| 4094 | 
            +
             * 'disabled': Copy operation is disabled through domain-based permissions.
         | 
| 4095 | 
            +
             */
         | 
| 4096 | 
            +
            declare type CopyBlockedEventReason = 'disabled';
         | 
| 4097 | 
            +
             | 
| 4098 | 
            +
            /**
         | 
| 4099 | 
            +
             * Control copy operations for a matched URL.
         | 
| 4100 | 
            +
             */
         | 
| 4101 | 
            +
            declare type CopyPermissions = {
         | 
| 4102 | 
            +
                /**
         | 
| 4103 | 
            +
                 * @defaultValue 'allowed'
         | 
| 4104 | 
            +
                 *
         | 
| 4105 | 
            +
                 * Controls the behavior for copy operations for a matched URL.
         | 
| 4106 | 
            +
                 *
         | 
| 4107 | 
            +
                 * allow: Enables all copy operations.
         | 
| 4108 | 
            +
                 * block: Disables all copy operations.
         | 
| 4109 | 
            +
                 * protect: Protects any copied content. Only URLs that have set paste.behavior: 'all-content' will be allowed to paste this content.
         | 
| 4110 | 
            +
                 */
         | 
| 4111 | 
            +
                behavior: 'allow' | 'block' | 'protect';
         | 
| 4112 | 
            +
                /**
         | 
| 4113 | 
            +
                 * Additional copy operation options
         | 
| 4114 | 
            +
                 */
         | 
| 4115 | 
            +
                options?: {
         | 
| 4116 | 
            +
                    /**
         | 
| 4117 | 
            +
                     * @defaultValue ''
         | 
| 4118 | 
            +
                     *
         | 
| 4119 | 
            +
                     * When setting behavior = 'protected' , this string will be pasted to other applications that do not have a matching URL instead of the original content.
         | 
| 4120 | 
            +
                     */
         | 
| 4121 | 
            +
                    replacementText: string;
         | 
| 4122 | 
            +
                };
         | 
| 4123 | 
            +
            };
         | 
| 4124 | 
            +
             | 
| 4057 4125 | 
             
            /**
         | 
| 4058 4126 | 
             
             * Defines and applies rounded corners for a frameless window. **NOTE:** On macOS corner is not ellipse but circle rounded by the
         | 
| 4059 4127 | 
             
             *  average of _height_ and _width_.
         | 
| @@ -4665,6 +4733,15 @@ declare class EmitterBase<EmitterEvent extends BaseEvent, EmitterEventType exten | |
| 4665 4733 | 
             
                    type: EventType;
         | 
| 4666 4734 | 
             
                }>, ...args: any[]) => boolean;
         | 
| 4667 4735 | 
             
                private hasEmitter;
         | 
| 4736 | 
            +
                /**
         | 
| 4737 | 
            +
                 * Cleans up after removal of a listener, e.g. deleting any lingering deregistration handlers for a
         | 
| 4738 | 
            +
                 * `once` subscription.
         | 
| 4739 | 
            +
                 *
         | 
| 4740 | 
            +
                 * @remarks Implementing this as a `removeListener` handler ensures that direct removal of a listener
         | 
| 4741 | 
            +
                 * on the base emitter will not leak additional core handlers.  We could do this in the forwarding method,
         | 
| 4742 | 
            +
                 * which would involve less "magic," but would be more-vulnerable to accidental re-introduction of a leak.
         | 
| 4743 | 
            +
                 */
         | 
| 4744 | 
            +
                private cleanUpRemovedListener;
         | 
| 4668 4745 | 
             
                private getOrCreateEmitter;
         | 
| 4669 4746 | 
             
                listeners: (type: string | symbol) => Function[];
         | 
| 4670 4747 | 
             
                listenerCount: (type: string | symbol) => number;
         | 
| @@ -4905,7 +4982,7 @@ declare type Event_4 = (WebContentsEvents.Event<'view'> & { | |
| 4905 4982 | 
             
             */
         | 
| 4906 4983 | 
             
            declare type Event_5<Topic extends string> = {
         | 
| 4907 4984 | 
             
                topic: Topic;
         | 
| 4908 | 
            -
            } & (BlurredEvent | CertificateSelectionShownEvent | CrashedEvent_2 | DidChangeThemeColorEvent | FocusedEvent | NavigationRejectedEvent | UrlChangedEvent | DidFailLoadEvent | DidFinishLoadEvent | DidStartLoadingEvent | PageFaviconUpdatedEvent | PageTitleUpdatedEvent | ResourceLoadFailedEvent | ResourceResponseReceivedEvent | ChildContentBlockedEvent | ChildContentOpenedInBrowserEvent | ChildViewCreatedEvent | ChildWindowCreatedEvent | FileDownloadStartedEvent | FileDownloadProgressEvent | FileDownloadCompletedEvent | FoundInPageEvent | CertificateErrorEvent | ContentBlockedEvent | WillRedirectEvent);
         | 
| 4985 | 
            +
            } & (BlurredEvent | CertificateSelectionShownEvent | CrashedEvent_2 | DidChangeThemeColorEvent | FocusedEvent | NavigationRejectedEvent | UrlChangedEvent | DidFailLoadEvent | DidFinishLoadEvent | DidStartLoadingEvent | PageFaviconUpdatedEvent | PageTitleUpdatedEvent | ResourceLoadFailedEvent | ResourceResponseReceivedEvent | ChildContentBlockedEvent | ChildContentOpenedInBrowserEvent | ChildViewCreatedEvent | ChildWindowCreatedEvent | FileDownloadStartedEvent | FileDownloadProgressEvent | FileDownloadCompletedEvent | FoundInPageEvent | CertificateErrorEvent | ContentBlockedEvent | WillRedirectEvent | ClipboardCopyBlockedEvent | ClipboardPasteBlockedEvent);
         | 
| 4909 4986 |  | 
| 4910 4987 | 
             
            /**
         | 
| 4911 4988 | 
             
             *  [Union](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#union-types) containing every possible event that can be emitted by a {@link Window}.  Events are
         | 
| @@ -5686,11 +5763,8 @@ declare type FrameEventType = EventType_5; | |
| 5686 5763 | 
             
            /**
         | 
| 5687 5764 | 
             
             * @interface
         | 
| 5688 5765 | 
             
             */
         | 
| 5689 | 
            -
            declare type FrameInfo = {
         | 
| 5690 | 
            -
                name: string;
         | 
| 5691 | 
            -
                uuid: string;
         | 
| 5766 | 
            +
            declare type FrameInfo = EntityInfo & {
         | 
| 5692 5767 | 
             
                url: string;
         | 
| 5693 | 
            -
                entityType: EntityType_4;
         | 
| 5694 5768 | 
             
                parent: Identity_4;
         | 
| 5695 5769 | 
             
            };
         | 
| 5696 5770 |  | 
| @@ -9636,6 +9710,8 @@ declare namespace OpenFin_2 { | |
| 9636 9710 | 
             
                    ClientConnectionPayload,
         | 
| 9637 9711 | 
             
                    EntityInfo,
         | 
| 9638 9712 | 
             
                    EntityType_4 as EntityType,
         | 
| 9713 | 
            +
                    ScreenCaptureState,
         | 
| 9714 | 
            +
                    ScreenCapturePermission,
         | 
| 9639 9715 | 
             
                    Bounds,
         | 
| 9640 9716 | 
             
                    WindowBounds,
         | 
| 9641 9717 | 
             
                    GetBoundsOptions,
         | 
| @@ -9856,7 +9932,11 @@ declare namespace OpenFin_2 { | |
| 9856 9932 | 
             
                    StructuredContentBehavior,
         | 
| 9857 9933 | 
             
                    StructuredContentPermissions,
         | 
| 9858 9934 | 
             
                    ContentPermission,
         | 
| 9935 | 
            +
                    ScreenCaptureBehavior,
         | 
| 9859 9936 | 
             
                    PerDomainSettings,
         | 
| 9937 | 
            +
                    CopyPermissions,
         | 
| 9938 | 
            +
                    PastePermissions,
         | 
| 9939 | 
            +
                    ClipboardPermissions,
         | 
| 9860 9940 | 
             
                    DomainSettingsRule,
         | 
| 9861 9941 | 
             
                    FileDownloadBehavior,
         | 
| 9862 9942 | 
             
                    FileDownloadBehaviorNames,
         | 
| @@ -10037,6 +10117,29 @@ declare type PageTitleUpdatedEvent = NamedEvent & { | |
| 10037 10117 | 
             
                title: string;
         | 
| 10038 10118 | 
             
            };
         | 
| 10039 10119 |  | 
| 10120 | 
            +
            /**
         | 
| 10121 | 
            +
             * Reasons for a paste operation being blocked
         | 
| 10122 | 
            +
             *
         | 
| 10123 | 
            +
             * 'invalid-data': Copy protection is enabled and the pasted data is invalid.
         | 
| 10124 | 
            +
             * 'disabled': Copy protection is turned on and the current URL for this WebContent has been disabled through domain-based settings from accessing the copied data.
         | 
| 10125 | 
            +
             */
         | 
| 10126 | 
            +
            declare type PasteBlockedEventReason = 'invalid-data' | 'disabled';
         | 
| 10127 | 
            +
             | 
| 10128 | 
            +
            /**
         | 
| 10129 | 
            +
             * Control copy operations for a matched URL.
         | 
| 10130 | 
            +
             */
         | 
| 10131 | 
            +
            declare type PastePermissions = {
         | 
| 10132 | 
            +
                /**
         | 
| 10133 | 
            +
                 * @defaultValue 'non-protected-content'
         | 
| 10134 | 
            +
                 *
         | 
| 10135 | 
            +
                 * Controls the behavior for paste operations for a matched URL.
         | 
| 10136 | 
            +
                 *
         | 
| 10137 | 
            +
                 * non-protected-content: All matching URLs will be able to paste content copied from non-protected URLs.
         | 
| 10138 | 
            +
                 * all-content: All matching URLs will be able to paste content copied from both protected (copy.behavior = 'protect') and on-protected (copy.behavior = 'allow') URLs.
         | 
| 10139 | 
            +
                 */
         | 
| 10140 | 
            +
                behavior: 'non-protected-content' | 'all-content';
         | 
| 10141 | 
            +
            };
         | 
| 10142 | 
            +
             | 
| 10040 10143 | 
             
            declare type PathServeRequest = ServeRequest & {
         | 
| 10041 10144 | 
             
                path: string;
         | 
| 10042 10145 | 
             
            };
         | 
| @@ -10180,6 +10283,16 @@ declare type PerDomainSettings = { | |
| 10180 10283 | 
             
                 * {@inheritdoc ChromiumPolicies}
         | 
| 10181 10284 | 
             
                 */
         | 
| 10182 10285 | 
             
                chromiumPolicies?: ChromiumPolicies;
         | 
| 10286 | 
            +
                contentProtection?: {
         | 
| 10287 | 
            +
                    /**
         | 
| 10288 | 
            +
                     * {@inheritdoc ScreenCaptureBehavior}
         | 
| 10289 | 
            +
                     */
         | 
| 10290 | 
            +
                    screenCapture: ScreenCaptureBehavior;
         | 
| 10291 | 
            +
                    /**
         | 
| 10292 | 
            +
                     * {@inheritdoc ClipboardPermissions}
         | 
| 10293 | 
            +
                     */
         | 
| 10294 | 
            +
                    clipboard?: ClipboardPermissions;
         | 
| 10295 | 
            +
                };
         | 
| 10183 10296 | 
             
            };
         | 
| 10184 10297 |  | 
| 10185 10298 | 
             
            /**
         | 
| @@ -12913,6 +13026,10 @@ declare interface ProtocolMap extends ProtocolMapBase { | |
| 12913 13026 | 
             
                    };
         | 
| 12914 13027 | 
             
                    response: OpenFin_2.PopupResult;
         | 
| 12915 13028 | 
             
                };
         | 
| 13029 | 
            +
                'get-screen-capture-permissions': {
         | 
| 13030 | 
            +
                    request: OpenFin_2.Identity;
         | 
| 13031 | 
            +
                    response: OpenFin_2.ScreenCapturePermission;
         | 
| 13032 | 
            +
                };
         | 
| 12916 13033 | 
             
                'render-overlay': {
         | 
| 12917 13034 | 
             
                    request: {
         | 
| 12918 13035 | 
             
                        bounds: OpenFin_2.Bounds;
         | 
| @@ -13442,6 +13559,31 @@ declare type RvmLaunchOptions = { | |
| 13442 13559 | 
             
                subscribe?: (launch: LaunchEmitter) => void;
         | 
| 13443 13560 | 
             
            };
         | 
| 13444 13561 |  | 
| 13562 | 
            +
            /**
         | 
| 13563 | 
            +
             * @interface
         | 
| 13564 | 
            +
             * Controls whether this content should be allowed or blocked when capturing the screen.
         | 
| 13565 | 
            +
             */
         | 
| 13566 | 
            +
            declare type ScreenCaptureBehavior = 'allow' | 'block';
         | 
| 13567 | 
            +
             | 
| 13568 | 
            +
            /**
         | 
| 13569 | 
            +
             * Returned by getScreenCapturePermission. Includes sub-entity permission states and the resulting permission.
         | 
| 13570 | 
            +
             * @interface
         | 
| 13571 | 
            +
             */
         | 
| 13572 | 
            +
            declare type ScreenCapturePermission = {
         | 
| 13573 | 
            +
                permission: ScreenCaptureBehavior;
         | 
| 13574 | 
            +
                permissions: ScreenCaptureState[];
         | 
| 13575 | 
            +
            };
         | 
| 13576 | 
            +
             | 
| 13577 | 
            +
            /**
         | 
| 13578 | 
            +
             * screenCapture state for a given entity as defined in domain settings.
         | 
| 13579 | 
            +
             * @interface
         | 
| 13580 | 
            +
             */
         | 
| 13581 | 
            +
            declare type ScreenCaptureState = {
         | 
| 13582 | 
            +
                info: EntityInfo;
         | 
| 13583 | 
            +
                behavior: ScreenCaptureBehavior;
         | 
| 13584 | 
            +
                url: string;
         | 
| 13585 | 
            +
            };
         | 
| 13586 | 
            +
             | 
| 13445 13587 | 
             
            /**
         | 
| 13446 13588 | 
             
             * @interface
         | 
| 13447 13589 | 
             
             */
         | 
| @@ -17737,6 +17879,19 @@ declare class WebContents<T extends BaseEvent> extends EmitterBase<T> { | |
| 17737 17879 | 
             
                 * {@link OpenFin.WebContentsEvents event namespace}.
         | 
| 17738 17880 | 
             
                 */
         | 
| 17739 17881 | 
             
                showPopupWindow(options: OpenFin_2.PopupOptions): Promise<OpenFin_2.PopupResult>;
         | 
| 17882 | 
            +
                /**
         | 
| 17883 | 
            +
                 *
         | 
| 17884 | 
            +
                 * Get the screen capture permission for this content.
         | 
| 17885 | 
            +
                 *
         | 
| 17886 | 
            +
                 * @example
         | 
| 17887 | 
            +
                 * ```js
         | 
| 17888 | 
            +
                 * const { permission } = await fin.me.getScreenCapturePermission();
         | 
| 17889 | 
            +
                 *
         | 
| 17890 | 
            +
                 * console.log(`This content is currently ${permission}ed in screen captures.`);
         | 
| 17891 | 
            +
                 *
         | 
| 17892 | 
            +
                 * ```
         | 
| 17893 | 
            +
                 */
         | 
| 17894 | 
            +
                getScreenCapturePermission(): Promise<OpenFin_2.ScreenCapturePermission>;
         | 
| 17740 17895 | 
             
            }
         | 
| 17741 17896 |  | 
| 17742 17897 | 
             
            /**
         | 
| @@ -17775,6 +17930,8 @@ declare namespace WebContentsEvents { | |
| 17775 17930 | 
             
                    FileDownloadProgressEvent,
         | 
| 17776 17931 | 
             
                    FileDownloadCompletedEvent,
         | 
| 17777 17932 | 
             
                    ContentBlockedEvent,
         | 
| 17933 | 
            +
                    ClipboardCopyBlockedEvent,
         | 
| 17934 | 
            +
                    ClipboardPasteBlockedEvent,
         | 
| 17778 17935 | 
             
                    Event_5 as Event,
         | 
| 17779 17936 | 
             
                    WebContentsEvent,
         | 
| 17780 17937 | 
             
                    WillPropagateWebContentsEvent,
         | 
    
        package/out/{mock.js → stub.js}
    RENAMED
    
    | @@ -372,7 +372,7 @@ var __classPrivateFieldGet$e = (commonjsGlobal && commonjsGlobal.__classPrivateF | |
| 372 372 | 
             
                if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
         | 
| 373 373 | 
             
                return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
         | 
| 374 374 | 
             
            };
         | 
| 375 | 
            -
            var _EmitterBase_emitterAccessor;
         | 
| 375 | 
            +
            var _EmitterBase_emitterAccessor, _EmitterBase_deregisterOnceListeners;
         | 
| 376 376 | 
             
            Object.defineProperty(base, "__esModule", { value: true });
         | 
| 377 377 | 
             
            base.Reply = base.EmitterBase = base.Base = void 0;
         | 
| 378 378 | 
             
            const promises_1 = promises;
         | 
| @@ -444,6 +444,7 @@ class EmitterBase extends Base { | |
| 444 444 | 
             
                    super(wire);
         | 
| 445 445 | 
             
                    this.topic = topic;
         | 
| 446 446 | 
             
                    _EmitterBase_emitterAccessor.set(this, void 0);
         | 
| 447 | 
            +
                    _EmitterBase_deregisterOnceListeners.set(this, void 0);
         | 
| 447 448 | 
             
                    this.eventNames = () => (this.hasEmitter() ? this.getOrCreateEmitter().eventNames() : []);
         | 
| 448 449 | 
             
                    /**
         | 
| 449 450 | 
             
                     * @internal
         | 
| @@ -452,7 +453,28 @@ class EmitterBase extends Base { | |
| 452 453 | 
             
                        return this.hasEmitter() ? this.getOrCreateEmitter().emit(eventType, payload, ...args) : false;
         | 
| 453 454 | 
             
                    };
         | 
| 454 455 | 
             
                    this.hasEmitter = () => this.wire.eventAggregator.has(__classPrivateFieldGet$e(this, _EmitterBase_emitterAccessor, "f"));
         | 
| 455 | 
            -
                     | 
| 456 | 
            +
                    /**
         | 
| 457 | 
            +
                     * Cleans up after removal of a listener, e.g. deleting any lingering deregistration handlers for a
         | 
| 458 | 
            +
                     * `once` subscription.
         | 
| 459 | 
            +
                     *
         | 
| 460 | 
            +
                     * @remarks Implementing this as a `removeListener` handler ensures that direct removal of a listener
         | 
| 461 | 
            +
                     * on the base emitter will not leak additional core handlers.  We could do this in the forwarding method,
         | 
| 462 | 
            +
                     * which would involve less "magic," but would be more-vulnerable to accidental re-introduction of a leak.
         | 
| 463 | 
            +
                     */
         | 
| 464 | 
            +
                    this.cleanUpRemovedListener = (eventType, listener) => {
         | 
| 465 | 
            +
                        const deregister = __classPrivateFieldGet$e(this, _EmitterBase_deregisterOnceListeners, "f").get(listener);
         | 
| 466 | 
            +
                        if (deregister) {
         | 
| 467 | 
            +
                            const emitter = this.wire.eventAggregator.getOrCreate(__classPrivateFieldGet$e(this, _EmitterBase_emitterAccessor, "f"));
         | 
| 468 | 
            +
                            emitter.removeListener(eventType, deregister);
         | 
| 469 | 
            +
                        }
         | 
| 470 | 
            +
                    };
         | 
| 471 | 
            +
                    this.getOrCreateEmitter = () => {
         | 
| 472 | 
            +
                        const emitter = this.wire.eventAggregator.getOrCreate(__classPrivateFieldGet$e(this, _EmitterBase_emitterAccessor, "f"));
         | 
| 473 | 
            +
                        if (!emitter.listeners('removeListener').includes(this.cleanUpRemovedListener)) {
         | 
| 474 | 
            +
                            emitter.on('removeListener', this.cleanUpRemovedListener);
         | 
| 475 | 
            +
                        }
         | 
| 476 | 
            +
                        return emitter;
         | 
| 477 | 
            +
                    };
         | 
| 456 478 | 
             
                    this.listeners = (type) => this.hasEmitter() ? this.getOrCreateEmitter().listeners(type) : [];
         | 
| 457 479 | 
             
                    this.listenerCount = (type) => this.hasEmitter() ? this.getOrCreateEmitter().listenerCount(type) : 0;
         | 
| 458 480 | 
             
                    this.registerEventListener = async (eventType, options = {}, applySubscription, undoSubscription) => {
         | 
| @@ -484,13 +506,13 @@ class EmitterBase extends Base { | |
| 484 506 | 
             
                                type: eventType
         | 
| 485 507 | 
             
                            };
         | 
| 486 508 | 
             
                            await this.wire.sendAction('unsubscribe-to-desktop-event', runtimeEvent).catch(() => null);
         | 
| 487 | 
            -
                             | 
| 488 | 
            -
                            return emitter;
         | 
| 509 | 
            +
                            return this.getOrCreateEmitter();
         | 
| 489 510 | 
             
                        }
         | 
| 490 511 | 
             
                        // This will only be reached if unsubscribe from event that does not exist but do not want to error here
         | 
| 491 512 | 
             
                        return Promise.resolve();
         | 
| 492 513 | 
             
                    };
         | 
| 493 514 | 
             
                    __classPrivateFieldSet$d(this, _EmitterBase_emitterAccessor, [topic, ...additionalAccessors], "f");
         | 
| 515 | 
            +
                    __classPrivateFieldSet$d(this, _EmitterBase_deregisterOnceListeners, new WeakMap(), "f");
         | 
| 494 516 | 
             
                    this.listeners = (event) => this.hasEmitter() ? this.getOrCreateEmitter().listeners(event) : [];
         | 
| 495 517 | 
             
                }
         | 
| 496 518 | 
             
                /**
         | 
| @@ -519,6 +541,7 @@ class EmitterBase extends Base { | |
| 519 541 | 
             
                 */
         | 
| 520 542 | 
             
                async once(eventType, listener, options) {
         | 
| 521 543 | 
             
                    const deregister = () => this.deregisterEventListener(eventType);
         | 
| 544 | 
            +
                    __classPrivateFieldGet$e(this, _EmitterBase_deregisterOnceListeners, "f").set(listener, deregister);
         | 
| 522 545 | 
             
                    await this.registerEventListener(eventType, options, (emitter) => {
         | 
| 523 546 | 
             
                        emitter.once(eventType, deregister);
         | 
| 524 547 | 
             
                        emitter.once(eventType, listener);
         | 
| @@ -549,6 +572,7 @@ class EmitterBase extends Base { | |
| 549 572 | 
             
                 */
         | 
| 550 573 | 
             
                async prependOnceListener(eventType, listener, options) {
         | 
| 551 574 | 
             
                    const deregister = () => this.deregisterEventListener(eventType);
         | 
| 575 | 
            +
                    __classPrivateFieldGet$e(this, _EmitterBase_deregisterOnceListeners, "f").set(listener, deregister);
         | 
| 552 576 | 
             
                    await this.registerEventListener(eventType, options, (emitter) => {
         | 
| 553 577 | 
             
                        emitter.prependOnceListener(eventType, listener);
         | 
| 554 578 | 
             
                        emitter.once(eventType, deregister);
         | 
| @@ -607,13 +631,13 @@ class EmitterBase extends Base { | |
| 607 631 | 
             
                    return this;
         | 
| 608 632 | 
             
                }
         | 
| 609 633 | 
             
                deleteEmitterIfNothingRegistered(emitter) {
         | 
| 610 | 
            -
                    if (emitter.eventNames(). | 
| 634 | 
            +
                    if (emitter.eventNames().every((type) => type === 'removeListener')) {
         | 
| 611 635 | 
             
                        this.wire.eventAggregator.delete(__classPrivateFieldGet$e(this, _EmitterBase_emitterAccessor, "f"));
         | 
| 612 636 | 
             
                    }
         | 
| 613 637 | 
             
                }
         | 
| 614 638 | 
             
            }
         | 
| 615 639 | 
             
            base.EmitterBase = EmitterBase;
         | 
| 616 | 
            -
            _EmitterBase_emitterAccessor = new WeakMap();
         | 
| 640 | 
            +
            _EmitterBase_emitterAccessor = new WeakMap(), _EmitterBase_deregisterOnceListeners = new WeakMap();
         | 
| 617 641 | 
             
            class Reply {
         | 
| 618 642 | 
             
            }
         | 
| 619 643 | 
             
            base.Reply = Reply;
         | 
| @@ -2123,6 +2147,21 @@ class WebContents extends base_1$j.EmitterBase { | |
| 2123 2147 | 
             
                    });
         | 
| 2124 2148 | 
             
                    return payload.data;
         | 
| 2125 2149 | 
             
                }
         | 
| 2150 | 
            +
                /**
         | 
| 2151 | 
            +
                 *
         | 
| 2152 | 
            +
                 * Get the screen capture permission for this content.
         | 
| 2153 | 
            +
                 *
         | 
| 2154 | 
            +
                 * @example
         | 
| 2155 | 
            +
                 * ```js
         | 
| 2156 | 
            +
                 * const { permission } = await fin.me.getScreenCapturePermission();
         | 
| 2157 | 
            +
                 *
         | 
| 2158 | 
            +
                 * console.log(`This content is currently ${permission}ed in screen captures.`);
         | 
| 2159 | 
            +
                 *
         | 
| 2160 | 
            +
                 * ```
         | 
| 2161 | 
            +
                 */
         | 
| 2162 | 
            +
                async getScreenCapturePermission() {
         | 
| 2163 | 
            +
                    return (await this.wire.sendAction('get-screen-capture-permissions', this.identity)).payload.data;
         | 
| 2164 | 
            +
                }
         | 
| 2126 2165 | 
             
            }
         | 
| 2127 2166 | 
             
            main.WebContents = WebContents;
         | 
| 2128 2167 |  | 
| @@ -17644,12 +17683,12 @@ class Transport extends events_1$1.EventEmitter { | |
| 17644 17683 | 
             
            Transport_1 = transport.Transport = Transport;
         | 
| 17645 17684 | 
             
            _Transport_wire = new WeakMap(), _Transport_fin = new WeakMap();
         | 
| 17646 17685 |  | 
| 17647 | 
            -
            var  | 
| 17686 | 
            +
            var stubEnvironment = {};
         | 
| 17648 17687 |  | 
| 17649 | 
            -
            Object.defineProperty( | 
| 17650 | 
            -
            var  | 
| 17688 | 
            +
            Object.defineProperty(stubEnvironment, "__esModule", { value: true });
         | 
| 17689 | 
            +
            var StubEnvironment_1 = stubEnvironment.StubEnvironment = void 0;
         | 
| 17651 17690 | 
             
            const me_1 = me;
         | 
| 17652 | 
            -
            class  | 
| 17691 | 
            +
            class StubEnvironment {
         | 
| 17653 17692 | 
             
                constructor() {
         | 
| 17654 17693 | 
             
                    this.type = 'other';
         | 
| 17655 17694 | 
             
                    this.childViews = true;
         | 
| @@ -17730,15 +17769,15 @@ class MockEnvironment { | |
| 17730 17769 | 
             
                    throw new Error('Method not implemented.');
         | 
| 17731 17770 | 
             
                }
         | 
| 17732 17771 | 
             
            }
         | 
| 17733 | 
            -
             | 
| 17772 | 
            +
            StubEnvironment_1 = stubEnvironment.StubEnvironment = StubEnvironment;
         | 
| 17734 17773 |  | 
| 17735 | 
            -
            var  | 
| 17774 | 
            +
            var stubWire = {};
         | 
| 17736 17775 |  | 
| 17737 | 
            -
            Object.defineProperty( | 
| 17738 | 
            -
            var  | 
| 17776 | 
            +
            Object.defineProperty(stubWire, "__esModule", { value: true });
         | 
| 17777 | 
            +
            var StubWire_1 = stubWire.StubWire = void 0;
         | 
| 17739 17778 | 
             
            /* eslint-disable @typescript-eslint/no-unused-vars */
         | 
| 17740 17779 | 
             
            const events_1 = require$$0;
         | 
| 17741 | 
            -
            class  | 
| 17780 | 
            +
            class StubWire extends events_1.EventEmitter {
         | 
| 17742 17781 | 
             
                connect() {
         | 
| 17743 17782 | 
             
                    throw new Error('You are not running in OpenFin.');
         | 
| 17744 17783 | 
             
                }
         | 
| @@ -17759,12 +17798,12 @@ class MockWire extends events_1.EventEmitter { | |
| 17759 17798 | 
             
                    super();
         | 
| 17760 17799 | 
             
                }
         | 
| 17761 17800 | 
             
            }
         | 
| 17762 | 
            -
             | 
| 17801 | 
            +
            StubWire_1 = stubWire.StubWire = StubWire;
         | 
| 17763 17802 |  | 
| 17764 17803 | 
             
            const fin$1 = ((typeof window !== 'undefined' && window?.fin) ||
         | 
| 17765 17804 | 
             
                (() => {
         | 
| 17766 | 
            -
                    const environment = new  | 
| 17767 | 
            -
                    const transport = new Transport_1( | 
| 17805 | 
            +
                    const environment = new StubEnvironment_1();
         | 
| 17806 | 
            +
                    const transport = new Transport_1(StubWire_1, environment, {
         | 
| 17768 17807 | 
             
                        uuid: '',
         | 
| 17769 17808 | 
             
                        name: ''
         | 
| 17770 17809 | 
             
                    });
         | 
    
        package/package.json
    CHANGED
    
    | @@ -1,10 +1,10 @@ | |
| 1 1 | 
             
            {
         | 
| 2 2 | 
             
                "name": "@openfin/core",
         | 
| 3 | 
            -
                "version": "40. | 
| 3 | 
            +
                "version": "40.103.1",
         | 
| 4 4 | 
             
                "description": "The core renderer entry point of OpenFin",
         | 
| 5 5 | 
             
                "license": "SEE LICENSE IN LICENSE.md",
         | 
| 6 | 
            -
                "main": "out/ | 
| 7 | 
            -
                "types": "out/ | 
| 6 | 
            +
                "main": "out/stub.js",
         | 
| 7 | 
            +
                "types": "out/stub.d.ts",
         | 
| 8 8 | 
             
                "private": false,
         | 
| 9 9 | 
             
                "scripts": {
         | 
| 10 10 | 
             
                    "prebuild": "rimraf ./out",
         |