UNPKG

@steambrew/client

Version:
263 lines (239 loc) 4.82 kB
export enum EResult { OK = 1, Fail, NoConnection, InvalidPassword = 5, LoggedInElsewhere, InvalidProtocolVer, InvalidParam, FileNotFound, Busy, InvalidState, InvalidName, InvalidEmail, DuplicateName, AccessDenied, Timeout, Banned, AccountNotFound, InvalidSteamID, ServiceUnavailable, NotLoggedOn, Pending, EncryptionFailure, InsufficientPrivilege, LimitExceeded, Revoked, Expired, AlreadyRedeemed, DuplicateRequest, AlreadyOwned, IPNotFound, PersistFailed, LockingFailed, LogonSessionReplaced, ConnectFailed, HandshakeFailed, IOFailure, RemoteDisconnect, ShoppingCartNotFound, Blocked, Ignored, NoMatch, AccountDisabled, ServiceReadOnly, AccountNotFeatured, AdministratorOK, ContentVersion, TryAnotherCM, PasswordRequiredToKickSession, AlreadyLoggedInElsewhere, Suspended, Cancelled, DataCorruption, DiskFull, RemoteCallFailed, PasswordUnset, ExternalAccountUnlinked, PSNTicketInvalid, ExternalAccountAlreadyLinked, RemoteFileConflict, IllegalPassword, SameAsPreviousValue, AccountLogonDenied, CannotUseOldPassword, InvalidLoginAuthCode, AccountLogonDeniedNoMail, HardwareNotCapableOfIPT, IPTInitError, ParentalControlRestricted, FacebookQueryError, ExpiredLoginAuthCode, IPLoginRestrictionFailed, AccountLockedDown, AccountLogonDeniedVerifiedEmailRequired, NoMatchingURL, BadResponse, RequirePasswordReEntry, ValueOutOfRange, UnexpectedError, Disabled, InvalidCEGSubmission, RestrictedDevice, RegionLocked, RateLimitExceeded, AccountLoginDeniedNeedTwoFactor, ItemDeleted, AccountLoginDeniedThrottle, TwoFactorCodeMismatch, TwoFactorActivationCodeMismatch, AccountAssociatedToMultiplePartners, NotModified, NoMobileDevice, TimeNotSynced, SmsCodeFailed, AccountLimitExceeded, AccountActivityLimitExceeded, PhoneActivityLimitExceeded, RefundToWallet, EmailSendFailure, NotSettled, NeedCaptcha, GSLTDenied, GSOwnerDenied, InvalidItemType, IPBanned, GSLTExpired, InsufficientFunds, TooManyPending, NoSiteLicensesFound, WGNetworkSendExceeded, AccountNotFriends, LimitedUserAccount, } export enum EBrowserType { /** * No window is created (like SharedJSContext). */ OffScreen, OpenVROverlay, OpenVROverlay_Dashboard, /** * A normal window. */ DirectHWND, /** * A borderless window. */ DirectHWND_Borderless, /** * An initially hidden window. * May be shown with {@link SteamClient.Window.ShowWindow}. */ DirectHWND_Hidden, ChildHWNDNative, Offscreen_SteamUI = 12, OpenVROverlay_Subview, } export enum ESteamRealm { Unknown, Global, China, } /** * Controls how Gamescope renders the GamepadUI window when a game is running. */ export enum EUIComposition { /** Steam is not rendered on the screen. */ Hidden, /** * Transparent divs will allow pixels from the app behind Steam to penetrate. * Input goes to **the app**. */ Notification, /** * Transparent divs will allow pixels from the app behind Steam to penetrate. * Input goes to **Steam**. */ Overlay, /** Take all of the pixels on the screen, nothing "behind" Steam is shown. */ Opaque, /** * Special composition mode that matches {@link Overlay}, but forwards synthetic keyboard * events to the Gamescope foreground app (game) instead of Steam. */ OverlayKeyboard, } export enum EUIMode { Unknown = -1, GamePad = 4, Desktop = 7, } /** 0 - false, 1 - true */ export type VDFBoolean_t = 0 | 1; export interface BrowserContext { /** * Window type. */ m_eBrowserType?: EBrowserType; /** * The UI mode in use. */ m_eUIMode?: EUIMode; /** * @todo Appears when {@link m_eBrowserType} == 0 ? */ m_gameID?: string; /** * @todo Same as `SteamClient.Browser.GetBrowserID()` ? */ m_nBrowserID: number; /** * Game's app ID. */ m_unAppID?: number; /** * If overlay, game's PID. */ m_unPID: number; } /** * Represents the response of an operation. It appears to be not necessary to await for this operation response. It is only used to indicate the result of an operation. */ export interface OperationResponse { /** * The result code of the operation. */ result: EResult; /** * An unlocalized message describing the result of the operation. */ message: string; } export interface Unregisterable { /** * Unregister the callback. */ unregister(): void; } /** * ProtoBuf message class. */ export interface JsPbMessageClass { /** * @todo Returns {@link JsPbMessage}, but not sure how to do it for the messages. */ deserializeBinary(data: ArrayBuffer): any; } /** * Deserialized ProtoBuf message. */ export interface JsPbMessage { getClassName(): string; serializeBase64String(): string; serializeBinary(): Uint8Array; /** * Converts the message to an object. */ toObject(includeJsPbInstance: boolean): any; }