@steambrew/client
Version:
A support library for creating plugins with Millennium.
92 lines (91 loc) • 3.21 kB
TypeScript
import { Unregisterable } from './shared';
export interface OpenVR {
Device: VRDevice;
DeviceProperties: DeviceProperties;
/**
* @throws OperationResponse if mutual capabilities haven't been loaded.
*/
GetMutualCapabilities(): Promise<any>;
GetWebSecret(): Promise<string>;
InstallVR(): any;
Keyboard: Keyboard;
PathProperties: PathProperties;
QuitAllVR(): any;
RegisterForButtonPress: Unregisterable;
RegisterForHMDActivityLevelChanged(callback: (m_eHMDActivityLevel: EHMDActivityLevel) => void): Unregisterable;
RegisterForInstallDialog: Unregisterable;
RegisterForStartupErrors(callback: (clientError: any, initError: any, initErrorString: string) => void): Unregisterable;
RegisterForVRHardwareDetected(callback: (m_bHMDPresent: any, m_bHMDHardwareDetected: any, m_strHMDName: any) => void): Unregisterable;
RegisterForVRModeChange(callback: (m_bIsVRRunning: boolean) => void): Unregisterable;
RegisterForVRSceneAppChange(callback: (param0: number) => void): Unregisterable;
SetOverlayInteractionAffordance: any;
StartVR: any;
TriggerOverlayHapticEffect: any;
VRNotifications: VRNotifications;
VROverlay: VROverlay;
}
export interface VRDevice {
BIsConnected: any;
RegisterForDeviceConnectivityChange: Unregisterable;
RegisterForVRDeviceSeenRecently(callback: (m_bVRDeviceSeenRecently: any) => void): Unregisterable;
}
export interface DeviceProperties {
GetBoolDeviceProperty: any;
GetDoubleDeviceProperty: any;
GetFloatDeviceProperty: any;
GetInt32DeviceProperty: any;
GetStringDeviceProperty: any;
RegisterForDevicePropertyChange: Unregisterable;
}
export interface Keyboard {
Hide(): any;
/**
* {@link EKeyboardFlags} could be useful here
*/
RegisterForStatus(callback: (m_bIsKeyboardOpen: boolean, m_eKeyboardFlags: number, m_sInitialKeyboardText: string) => void): Unregisterable;
SendDone(): any;
SendText(key: string): any;
Show(): any;
}
export interface PathProperties {
GetBoolPathProperty: any;
GetDoublePathProperty: any;
GetFloatPathProperty: any;
GetInt32PathProperty: any;
GetStringPathProperty: any;
RegisterForPathPropertyChange: any;
SetBoolPathProperty: any;
SetDoublePathProperty: any;
SetFloatPathProperty: any;
SetInt32PathProperty: any;
SetStringPathProperty: any;
}
export interface VRNotifications {
HideCustomNotification: any;
RegisterForNotificationEvent: Unregisterable;
ShowCustomNotification: any;
}
export interface VROverlay {
HideDashboard: any;
IsDashboardVisible(): Promise<boolean>;
RegisterForButtonPress: Unregisterable;
RegisterForCursorMovement: Unregisterable;
RegisterForThumbnailChanged: Unregisterable;
RegisterForVisibilityChanged: Unregisterable;
ShowDashboard: any;
SwitchToDashboardOverlay(param0: string): void;
}
export declare enum EHMDActivityLevel {
Unknown = -1,
Idle = 0,
UserInteraction = 1,
UserInteraction_Timeout = 2,
Standby = 3,
Idle_Timeout = 4
}
export declare enum EKeyboardFlags {
Minimal = 1,
Modal = 2,
ShowArrowKeys = 4,
HideDoneKey = 8
}