friend-connect
Version:
**BEFORE YOU USE THIS TOOL, PLEASE READ THE FOLLOWING: WE _AS CONTRIBUTORS_ ARE NOT RESPONSIBLE FOR ANY DAMAGE OR LOSS CAUSED BY THIS APP. USE AN ALT ACCOUNT, JUST IN CASE THERE IS AN ISSUE WITH THIS METHOD.**
57 lines (56 loc) • 1.95 kB
TypeScript
/// <reference types="node" />
import Achievements from "./modules/achievements";
import { LiveCache, XboxLiveToken } from "./types";
import authPkg from "prismarine-auth";
import EventEmitter from "events";
import SessionDirectory from "./modules/sessionDirectory";
import Social from "./modules/social";
import PeopleHub from "./modules/peopleHub";
interface XboxLiveTokenProvider {
userXuid: string;
userHash: string;
xstsToken: string;
expiresOn: number;
isRefreshing: boolean;
reset(): void;
refresh(): Promise<XboxLiveToken>;
}
export declare class LinkCodeTokenProvider extends EventEmitter implements XboxLiveTokenProvider {
#private;
get userXuid(): string;
get userHash(): string;
get xstsToken(): string;
get expiresOn(): number;
email: string;
authOptions: authPkg.MicrosoftAuthFlowOptions;
cachePath: string;
emailHash: string;
clientId: string;
liveCache: LiveCache;
firstTokenAcquired: boolean;
static readonly uri = "https://login.live.com/oauth20_token.srf";
get isRefreshing(): boolean;
constructor(email: string, tokenPath: string, options?: authPkg.MicrosoftAuthFlowOptions, codeCallback?: (res: {
userCode: string;
deviceCode: string;
verificationUri: string;
expiresIn: number;
interval: number;
message: string;
}) => void);
reset(): void;
refresh(): Promise<XboxLiveToken>;
private setRefreshInterval;
get(): Promise<XboxLiveToken>;
}
export declare class XboxClient extends EventEmitter {
token: XboxLiveTokenProvider;
get xuid(): string;
get authorizationHeader(): string;
readonly social: Social;
readonly sessionDirectory: SessionDirectory;
readonly achievements: Achievements;
readonly peopleHub: PeopleHub;
constructor(tokenProvider: XboxLiveTokenProvider);
}
export {};