mirror of
https://github.com/ksyasuda/SubMiner.git
synced 2026-02-28 06:22:45 -08:00
36 lines
1.5 KiB
TypeScript
36 lines
1.5 KiB
TypeScript
import {
|
|
OverlayVisibilityFacadeDeps,
|
|
} from "./overlay-visibility-facade-service";
|
|
|
|
export interface OverlayVisibilityFacadeDepsRuntimeOptions {
|
|
getVisibleOverlayVisible: () => boolean;
|
|
getInvisibleOverlayVisible: () => boolean;
|
|
setVisibleOverlayVisibleState: (nextVisible: boolean) => void;
|
|
setInvisibleOverlayVisibleState: (nextVisible: boolean) => void;
|
|
updateVisibleOverlayVisibility: () => void;
|
|
updateInvisibleOverlayVisibility: () => void;
|
|
syncInvisibleOverlayMousePassthrough: () => void;
|
|
shouldBindVisibleOverlayToMpvSubVisibility: () => boolean;
|
|
isMpvConnected: () => boolean;
|
|
setMpvSubVisibility: (mpvSubVisible: boolean) => void;
|
|
}
|
|
|
|
export function createOverlayVisibilityFacadeDepsRuntimeService(
|
|
options: OverlayVisibilityFacadeDepsRuntimeOptions,
|
|
): OverlayVisibilityFacadeDeps {
|
|
return {
|
|
getVisibleOverlayVisible: options.getVisibleOverlayVisible,
|
|
getInvisibleOverlayVisible: options.getInvisibleOverlayVisible,
|
|
setVisibleOverlayVisibleState: options.setVisibleOverlayVisibleState,
|
|
setInvisibleOverlayVisibleState: options.setInvisibleOverlayVisibleState,
|
|
updateVisibleOverlayVisibility: options.updateVisibleOverlayVisibility,
|
|
updateInvisibleOverlayVisibility: options.updateInvisibleOverlayVisibility,
|
|
syncInvisibleOverlayMousePassthrough:
|
|
options.syncInvisibleOverlayMousePassthrough,
|
|
shouldBindVisibleOverlayToMpvSubVisibility:
|
|
options.shouldBindVisibleOverlayToMpvSubVisibility,
|
|
isMpvConnected: options.isMpvConnected,
|
|
setMpvSubVisibility: options.setMpvSubVisibility,
|
|
};
|
|
}
|