add docs for types and edit a few types

This commit is contained in:
Suyashtnt 2021-01-18 16:13:47 +02:00
parent 8812596cd4
commit b9647a91ba
No known key found for this signature in database
GPG key ID: D460DDC9CDD4CE1E
2 changed files with 209 additions and 107 deletions

112
index.d.ts vendored
View file

@ -25,34 +25,114 @@ declare module "minecraft-launcher-core" {
}
interface ILauncherOptions {
/**
* Path or URL to the client package zip file.
*/
clientPackage?: string;
/**
* if true MCLC will remove the client package zip file after its finished extracting.
*/
removePackage?: boolean;
/**
* Path to installer being executed.
*/
installer?: string;
/**
* Path where you want the launcher to work in.
* This will usually be your .minecraft folder
*/
root: string;
/**
* OS override for minecraft natives
*
* @default will autodetect
*/
os?: OS;
/**
* Array of custom Minecraft arguments.
*/
customLaunchArgs?: Array<string>;
/**
* Array of custom Java arguments
*/
customArgs?: Array<string>;
/**
* minecraft version info
*/
version: {
/**
* Actual version.
*
* @example '1.16.4'
*/
number: string;
type: string;
/**
* type of release, usually `release` or `snapshot`
*/
type: 'release' | 'snapshot' | string;
/**
* The name of the folder, jar file, and version json in the version folder.
*
* ` MCLM will look in the `versions` folder for this name
* @example '1.16.4-fabric'
*/
custom?: string;
};
memory: {
/**
* Min amount of memory being used by Minecraft.
*/
max: string | number;
/**
* Max amount of memory being used by Minecraft.
*/
min: string | number;
};
/**
* Path to Forge Jar.
*
* Versions below 1.13 should be the "universal" jar while versions above 1.13+ should be the "installer" jar
*/
forge?: string;
/**
* Path to the JRE executable file, will default to java if not entered.
*/
javaPath?: string;
server?: {
/**
* Host url to the server, don't include the port.
*/
host: string;
port: string;
/**
* Port of the host url
*
* @default 25565
*/
port?: string;
};
proxy?: {
/**
* Host url to the proxy, don't include the port.
*/
host: string;
port: string;
/**
* Username for the proxy.
*
* @default 8080
*/
port?: string;
/**
* Username for the proxy.
*/
username?: string;
/**
* Password for the proxy.
*/
password?: string;
};
/**
* Timeout on download requests.
*/
timeout?: number;
window?: {
width?: number;
@ -77,20 +157,43 @@ declare module "minecraft-launcher-core" {
}
interface IAuthenticator {
/**
* @param username email if using a password, else the username
* @param password password for mojang account
*/
getAuth(username: string, password?: string): Promise<IUser>;
/**
*
* @param access_token Token being checked if it can be used to login with (online mode)
* @param client_token Client token being checked to see if there was a change of client (online mode)
*/
validate(
access_token: string,
client_token: string
): Promise<boolean | Partial<any>>;
/**
*
* @param access_token Token being checked if it can be used to login with (online mode)
* @param client_token Client token being checked to see if there was a change of client (online mode)
*/
refreshAuth(
access_token: string,
client_token: string,
selectedProfile: IProfile
): Promise<IUser>;
/**
*
* @param access_token Token being checked if it can be used to login with (online mode)
* @param client_token Client token being checked to see if there was a change of client (online mode)
*/
invalidate(
access_token: string,
client_token: string
): Promise<boolean | Partial<any>>;
/**
* @param username email if using a password, else the username
* @param password password for mojang account
*/
signOut(
username: string,
password: string
@ -106,5 +209,4 @@ declare module "minecraft-launcher-core" {
}
export const Authenticator: IAuthenticator;
}
}

2
package-lock.json generated
View file

@ -1,6 +1,6 @@
{
"name": "minecraft-launcher-core",
"version": "3.14.6",
"version": "3.16.1",
"lockfileVersion": 1,
"requires": true,
"dependencies": {