declare const RouteBases: { readonly mojang: "https://api.mojang.com"; readonly mcservices: "https://api.minecraftservices.com"; readonly sessionmojang: "https://sessionserver.mojang.com"; readonly mcsrvstat: "https://api.mcsrvstat.us"; readonly skins: "https://starlightskins.lunareclipse.studio"; readonly mush: "https://mush.com.br/api"; }; declare const skinRenderCrops: readonly ["full", "bust", "face", "head", "processed", "barebones"]; type SkinRenderCrop = (typeof skinRenderCrops)[number]; declare const skinRenderTypeCrops: { readonly default: readonly ["full", "bust", "face"]; readonly marching: readonly ["full", "bust", "face"]; readonly walking: readonly ["full", "bust", "face"]; readonly crouching: readonly ["full", "bust", "face"]; readonly crossed: readonly ["full", "bust", "face"]; readonly criss_cross: readonly ["full", "bust", "face"]; readonly ultimate: readonly ["full", "bust", "face"]; readonly isometric: readonly ["full", "bust", "face", "head"]; readonly head: readonly ["full"]; readonly custom: readonly ["full", "bust", "face"]; readonly cheering: readonly ["full", "bust", "face"]; readonly relaxing: readonly ["full", "bust", "face"]; readonly trudging: readonly ["full", "bust", "face"]; readonly cowering: readonly ["full", "bust", "face"]; readonly pointing: readonly ["full", "bust", "face"]; readonly lunging: readonly ["full", "bust", "face"]; readonly dungeons: readonly ["full", "bust", "face"]; readonly facepalm: readonly ["full", "bust", "face"]; readonly sleeping: readonly ["full", "bust"]; readonly dead: readonly ["full", "bust", "face"]; readonly archer: readonly ["full", "bust", "face"]; readonly kicking: readonly ["full", "bust", "face"]; readonly mojavatar: readonly ["full", "bust"]; readonly reading: readonly ["full", "bust", "face"]; readonly high_ground: readonly ["full", "bust", "face"]; readonly clown: readonly ["full", "bust", "face"]; readonly bitzel: readonly ["full", "bust", "face"]; readonly pixel: readonly ["full", "bust", "face"]; readonly ornament: readonly ["full"]; readonly skin: readonly ["default", "processed", "barebones"]; readonly profile: readonly ["full", "bust", "face"]; }; type SkinRenderTypeCrops = typeof skinRenderTypeCrops; type SkinRenderTypeCrop = { -readonly [K in keyof SkinRenderTypeCrops]: SkinRenderTypeCrops[K][number]; }; interface SkinRenderCameraCoords { x: string | number; y: string | number; z: string | number; } interface SkinRenderCameraOptions { /** * - Defines the coordinates of the camera's position. * - Default Value: Value changes based on render type. * - default: `{ x: 11.92, y: 15.81, z: -29.71 }` * - marching: `{ x: 21.96, y: 11.12, z: -28.25 }` * - walking: `{ x: 23.86, y: 22.67, z: -26.65 }` * - crouching: `{ x: 16.29, y: 21.82, z: -34.03 }` * - crossed: `{ x: 17.65, y: 21.37, z: -24.47 }` * - criss_cross: `{ x: 11.92, y: 15.81, z: -29.71 }` * - ultimate: `{ x: 15, y: 22, z: -35 }` * - isometric: `{ x: -64, y: 60.26, z: -64 }` * - head: `{ x: 9.97, y: 19.64, z: -20.98 }` * - cheering: `{ x: 14.88, y: 28.91, z: -30.19 }` * - relaxing: `{ x: -16.04, y: 16.57, z: -27.5 }` * - trudging: `{ x: 16.04, y: 16.57, z: -27.5 }` * - cowering: `{ x: -14.62, y: 15.93, z: -23.63 }` * - pointing: `{ x: -3.41, y: 18.3, z: -30.8 }` * - lunging: `{ x: -0.41, y: 24.7, z: -34.73 }` * - dungeons: `{ x: 15.26, y: 19.62, z: -27.58 }` * - facepalm: `{ x: 3.11, y: 17.56, z: -31.13 }` */ cameraPosition: SkinRenderCameraCoords; /** * - Defines the coordinates of the camera's focal point. You can use this parameter to focus on specific details or areas in your render. * - Default Value: Value changes based on render type. * - default: `{ x: 0.31, y: 18.09, z: 1.32 }` * - marching: `{ x: 0.03, y: 16.12, z: -0.33 }` * - walking: `{ x: -1.49, y: 17.46, z: 2.16 }` * - crouching: `{ x: -1.83, y: 16.04, z: -0.29 }` * - crossed: `{ x: -0.35, y: 16.83, z: 0.44 }` * - criss_cross: `{ x: 0.31, y: 18.09, z: 1.32 }` * - ultimate: `{ x: 0, y: 16, z: 0 }` * - isometric: `{ x: 4, y: 12, z: 4 }` * - head: `{ x: -0.01, y: 27.96, z: -0.32 }` * - cheering: `{ x: -0.19, y: 17.08, z: 3.46 }` * - relaxing: `{ x: -1.05, y: 6.89, z: 0.5 }` * - trudging: `{ x: 0.03, y: 16.12, z: -0.33 }` * - cowering: `{ x: 1.38, y: 12.29, z: -0.37 }` * - pointing: `{ x: -0.08, y: 19.08, z: 2.23 }` * - lunging: `{ x: 0.45, y: 20.78, z: 3.79 }` * - dungeons: `{ x: -1.06, y: 17.6, z: 1.26 }` * - facepalm: `{ x: 0.55, y: 20.96, z: 1.8 }` */ cameraFocalPoint: SkinRenderCameraCoords; /** * - This allows the user to change the width of the image using an integer. Disables auto-crop when defined. (Value cannot be larger than 3840 pixels.) * - Default 3D Value: `1159` * - Default 2D Value: `800` * */ cameraWidth: number; /** * - This allows the user to change the height of the image using an integer. Disables auto-crop when defined. (Value cannot be larger than 3840 pixels.) * - Default 3D Value: `1159` * - Default 2D Value: `Will always match scale of cameraWidth.` */ cameraHeight: number; /** * - A float value that changes the scale of the render. (Value cannot be 0 or lower, only works with 3D renders.) * - Default Value: `1` */ renderScale: number; /** * - An integer that allows the user to set the Field of View (FOV) of the camera. (Tip: Blockbench default is 45.) * - Default Value: `75` */ cameraFOV: number; /** * - This is a boolean value that provides the user with the option to switch between using an orthographic camera or not. It grants you the freedom to choose the camera style that best suits your creative vision. * - Default Value: Value changes based on render type. */ isometric: boolean; /** * - This is a boolean value that provides the user with the option to enable a small, white, Minecraft Dungeons-inspired highlight. * - Default Value: `false` */ borderHighlight: boolean; /** * - This is a color value that allows the user to change the color of the borderHighlight. (Only works when the borderHighlight parameter is enabled.) * - Default Value: `ffffff` */ borderHighlightColor: string; /** * - A integer value that provides the user the ability to adjust the size of the borderHighlight. (Only works when the borderHighlight parameter is enabled.) * - Default Value: `3` */ borderHighlightRadius: number; /** * - This is a boolean value that provides the user with the option to enable a simple drop shadow on the render. * - Default Value: `false` */ dropShadow: boolean; } interface SkinRenderLightingOptions { /** * - Defines the coordinates of the directional light used in the scene. * - Default Value: Value changes based on render type. * - All renders: `{ x: -10, y: 10, z: -10 }` * - relaxing: `{ x: 10, y: 10, z: -10 }` * - cowering: `{ x: 10, y: 10, z: -10 }` */ dirLightPos: SkinRenderCameraCoords; /** * - This value allows the user to set the color of the directional light used in the scene. Allows hexadecimal color values, such as: "b300ff." * - Default Value: `ffffff` */ dirLightColor: string; /** * - This numerical value acts as an adjustment to the global lighting setup's original light level. * - Default Value: `0` */ dirLightIntensity: number; /** * - This value allows the user to set the color of the global light used in the scene. Allows hexadecimal color values, such as: "0040ff." * - Default Value: `ffffff` */ globalLightColor: string; /** * - This numerical value acts as an adjustment to the global lighting setup's original light level. * - Default Value: `0` */ globalLightIntensity: number; } type SkinModelType = "slim" | "wide"; interface SkinRenderModelOptions { /** * - This parameter allows the user to define a skin image to use using a url. * - Default Value: Value changes based on player name/uuid. */ skinUrl: string; /** * - Must be used with skinUrl, this parameter allows you to choose whether the geometry for your model is slim or wide. * - Default Value: `wide` */ skinType: SkinModelType; /** * - A link to the model the API will use in the case of a players skin using the wide format. (Must be used with the custom render type.) * - Default Value: Value changes based on render type. */ wideModel: string; /** * - A link to the model the API will use in the case of a players skin using the slim format. (Must be used with the custom render type.) * - Default Value: Value changes based on render type. */ slimModel: string; /** * - This parameter allows the user to define a OBJ model using a url that can be used as a prop. * - Default Value: Value changes based on render type. */ propModel: string; /** * - Must be used with propModel, this parameter allows the user to choose the texture applied to the prop. * - Default Value: Value changes based on render type. */ propTexture: string; /** * - Must be used with the custom render type, this parameter allows the user to choose a custom OBJ cape model to be applied to the scene. When left blank no cape will apply. * - Default Value: Value changes based on render type. */ capeModel: string; /** * - Can be defined on any 3D render, this allows the user to define a custom cape texture to apply to the cape model. When left blank the players default cape will apply. * - Default Value: Value changes based on player name/uuid. */ capeTexture: string; /** * - Allows the user to choose whether capes can render on their renders. * - Default Value: `true` */ capeEnabled: boolean; /** * - Allows the user to choose whether or not shading is enabled for the prop model. * - [MeshLambertMaterial](https://threejs.org/docs/#api/en/materials/MeshLambertMaterial) when true, [MeshBasicMaterial](https://threejs.org/docs/#api/en/materials/MeshBasicMaterial) when false. * - Default Value: `true` */ propModelShading: boolean; /** * - Allows the user to choose whether or not shading is enabled for the cape model. * - [MeshLambertMaterial](https://threejs.org/docs/#api/en/materials/MeshLambertMaterial) when true, [MeshBasicMaterial](https://threejs.org/docs/#api/en/materials/MeshBasicMaterial) when false. * - Default Value: `true` */ capeModelShading: boolean; /** * - Allows the user to choose whether or not shading is enabled for the player model. * - [MeshLambertMaterial](https://threejs.org/docs/#api/en/materials/MeshLambertMaterial) when true, [MeshBasicMaterial](https://threejs.org/docs/#api/en/materials/MeshBasicMaterial) when false. * - Default Value: `true` */ playerModelShading: boolean; } type FetchResult = | { success: true; data: T; } | { success: false; error: string; code: number; } type CamelCase = S extends `${infer First}_${infer Rest}` ? `${First}${Capitalize>}` : S; type CamelCaseKeys = T extends any[] ? T extends [infer First, ...infer Rest] ? [CamelCaseKeys, ...CamelCaseKeys] : T : { [K in keyof T as CamelCase]: T[K] extends object ? CamelCaseKeys : T[K]; }; interface SkinInfo { /** The UUID of the requested player. */ playerUUID: string; /** The link to the players skin file. If the skinURL parameter is defined this will change to match it. */ skinUrl: string; /** The link to the players cape file. */ userCape: string; /** If the skin's texture height is equal to 32 pixels indicating a classic skin is present, this value will generate a base64 copy of the skin converted to 64x64. */ processedSkinUrl: string; /** Defines whether the geometry for your model is slim or wide. If the skinType parameter is defined this will change to match it. */ skinType: SkinModelType; /** The width in pixels of the player's skin. Will default to 64 when the skinUrl parameter is defined. */ skinTextureWidth: number; /** The height in pixels of the player's skin. Will default to 64 when the skinUrl parameter is defined. */ skinTextureHeight: number; } type FetchSkinInfoResult = FetchResult>; declare function fetchSkinInfo(nickOrUIID: string): Promise; declare const skinRenderTypes: readonly ["default", "marching", "walking", "crouching", "crossed", "criss_cross", "ultimate", "isometric", "head", "custom", "cheering", "relaxing", "trudging", "cowering", "pointing", "lunging", "dungeons", "facepalm", "sleeping", "dead", "archer", "kicking", "mojavatar", "reading", "high_ground", "clown", "bitzel", "pixel", "ornament", "skin", "profile"]; type SkinRenderType = (typeof skinRenderTypes)[number]; type SkinRenderOptions = { camera?: Partial; lighting?: Partial; model?: Partial; }; declare function skinRoute(nickOrUUID: string, type?: T, crop?: SkinRenderTypeCrop[T], options?: SkinRenderOptions): string; type FetchSkinRenderResult = FetchResult<{ buffer: Buffer; arrayBuffer: ArrayBuffer; url: string; response: Response; }>; declare function fetchSkinRender(nickOrUUID: string, type?: T, crop?: SkinRenderTypeCrop[T], options?: SkinRenderOptions): Promise; interface MinecraftProfile { /** UUID of the player. */ id: string; /** Name of the player, case sensitive. */ name: string; /** Included in response if the account has not migrated to Mojang account. */ legacy?: boolean; /** Included in response if the account does not own the game. */ demo?: boolean; } type FetchMinecraftProfileResult = FetchResult; declare function fetchMinecraftProfile(nick: string): Promise; interface SessionProperty { timestamp: number; profileId: string; profileName: string; textures: { SKIN: { url: string; metadata?: { model: "slim"; }; }; CAPE: { url: string; }; }; } interface MinecraftProfileSession extends Omit { properties: SessionProperty[]; } type FetchMinecraftProfileSessionResult = FetchResult; declare function fetchMinecraftProfileSession(UUID: string): Promise; interface MushGameBadge { format: string; hex_color: string; min_level: number; symbol: string; type: string; } interface MushBedWarsStats { assists: number; deaths: number; games_played: number; kills: number; level: number; level_badge: MushGameBadge; losses: number; max_winstreak: number; wins: number; winstreak: number; xp: number; "1v1_games_played": number; "3v3_games_played": number; "3v3v3v3_beds_broken": number; "3v3v3v3_beds_lost": number; "3v3v3v3_deaths": number; "3v3v3v3_final_deaths": number; "3v3v3v3_final_kills": number; "3v3v3v3_games_played": number; "3v3v3v3_kills": number; "3v3v3v3_losses": number; "3v3v3v3_max_winstreak": number; "3v3v3v3_wins": number; "3v3v3v3_winstreak": number; "4v4v4v4_beds_broken": number; "4v4v4v4_deaths": number; "4v4v4v4_final_kills": number; "4v4v4v4_games_played": number; "4v4v4v4_kills": number; "4v4v4v4_wins": number; "4v4v4v4_winstreak": number; beds_broken: number; beds_lost: number; doubles_assists: number; doubles_beds_broken: number; doubles_beds_lost: number; doubles_deaths: number; doubles_final_assists: number; doubles_final_deaths: number; doubles_final_kills: number; doubles_games_played: number; doubles_kills: number; doubles_losses: number; doubles_max_winstreak: number; doubles_wins: number; doubles_winstreak: number; final_assists: number; final_deaths: number; final_kills: number; fkdr: number; infection_solo_beds_broken: number; infection_solo_beds_lost: number; infection_solo_deaths: number; infection_solo_final_deaths: number; infection_solo_final_kills: number; infection_solo_fkdr: number; infection_solo_games_played: number; infection_solo_kills: number; infection_solo_losses: number; infection_solo_max_winstreak: number; infection_solo_wins: number; infection_solo_winstreak: number; solo_assists: number; solo_beds_broken: number; solo_beds_lost: number; solo_deaths: number; solo_final_deaths: number; solo_final_kills: number; solo_fkdr: number; solo_games_played: number; solo_kills: number; solo_losses: number; solo_max_winstreak: number; solo_wins: number; solo_winstreak: number; } interface MushBlockpartyStats { played: number; rounds: number; } interface MushBrigdepraticeStats { extra_short_best_time: number; extra_short_bridge_attempts: number; extra_short_bridges: number; extra_short_total_time: number; infinite_bridge_attempts: number; long_bridge_attempts: number; short_best_time: number; short_bridge_attempts: number; short_bridges: number; short_total_time: number; } interface MushCTFStats { captures: number; coins: number; games_played: number; kills: number; returns: number; } interface MushDuelsStats { bed_fight_deaths: number; bed_fight_kills: number; bed_fight_level_badge: MushGameBadge; bed_fight_losses: number; bed_fight_played: number; bed_fight_solo_deaths: number; bed_fight_solo_kills: number; bed_fight_solo_losses: number; bed_fight_solo_played: number; boxing_deaths: number; boxing_kills: number; boxing_level: number; boxing_level_badge: MushGameBadge; boxing_losses: number; boxing_max_winstreak: number; boxing_played: number; boxing_solo_deaths: number; boxing_solo_kills: number; boxing_solo_losses: number; boxing_solo_max_winstreak: number; boxing_solo_played: number; boxing_solo_wins: number; boxing_solo_winstreak: number; boxing_wins: number; boxing_winstreak: number; boxing_xp: number; bridge_1v1v1v1_winstreak: number; bridge_deaths: number; bridge_doubles_deaths: number; bridge_doubles_kills: number; bridge_doubles_losses: number; bridge_doubles_played: number; bridge_doubles_points: number; bridge_doubles_wins: number; bridge_doubles_winstreak: number; bridge_four_winstreak: number; bridge_kills: number; bridge_level: number; bridge_level_badge: MushGameBadge; bridge_losses: number; bridge_played: number; bridge_points: number; bridge_solo_deaths: number; bridge_solo_kills: number; bridge_solo_played: number; bridge_solo_points: number; bridge_solo_wins: number; bridge_solo_winstreak: number; bridge_wins: number; bridge_winstreak: number; bridge_xp: number; combo_deaths: number; combo_kills: number; combo_level: number; combo_level_badge: MushGameBadge; combo_max_winstreak: number; combo_played: number; combo_solo_kills: number; combo_solo_max_winstreak: number; combo_solo_played: number; combo_solo_wins: number; combo_solo_winstreak: number; combo_wins: number; combo_winstreak: number; combo_xp: number; fireball_fight_beds_broken: number; fireball_fight_deaths: number; fireball_fight_kills: number; fireball_fight_level_badge: MushGameBadge; fireball_fight_losses: number; fireball_fight_max_winstreak: number; fireball_fight_played: number; fireball_fight_solo_beds_broken: number; fireball_fight_solo_deaths: number; fireball_fight_solo_kills: number; fireball_fight_solo_losses: number; fireball_fight_solo_max_winstreak: number; fireball_fight_solo_played: number; fireball_fight_solo_wins: number; fireball_fight_solo_winstreak: number; fireball_fight_wins: number; fireball_fight_winstreak: number; fireball_fight_xp: number; gapple_deaths: number; gapple_kills: number; gapple_level: number; gapple_level_badge: MushGameBadge; gapple_losses: number; gapple_played: number; gapple_solo_deaths: number; gapple_solo_kills: number; gapple_solo_losses: number; gapple_solo_played: number; gapple_solo_wins: number; gapple_solo_winstreak: number; gapple_wins: number; gapple_winstreak: number; gapple_xp: number; gladiator_deaths: number; gladiator_hg_solo_deaths: number; gladiator_hg_solo_kills: number; gladiator_hg_solo_losses: number; gladiator_hg_solo_played: number; gladiator_hg_solo_wins: number; gladiator_hg_solo_winstreak: number; gladiator_kills: number; gladiator_level: number; gladiator_level_badge: MushGameBadge; gladiator_losses: number; gladiator_played: number; gladiator_solo_deaths: number; gladiator_solo_losses: number; gladiator_solo_played: number; gladiator_solo_wins: number; gladiator_solo_winstreak: number; gladiator_wins: number; gladiator_winstreak: number; gladiator_xp: number; hgsim_level_badge: MushGameBadge; lava_level_badge: MushGameBadge; lava_played: number; lava_solo_winstreak: number; lava_wins: number; lava_winstreak: number; lava_xp: number; no_debuff_deaths: number; no_debuff_doubles_winstreak: number; no_debuff_kills: number; no_debuff_level_badge: MushGameBadge; no_debuff_played: number; no_debuff_solo_winstreak: number; no_debuff_wins: number; no_debuff_winstreak: number; no_debuff_xp: number; soup_deaths: number; soup_doubles_deaths: number; soup_doubles_kills: number; soup_doubles_losses: number; soup_doubles_played: number; soup_doubles_wins: number; soup_doubles_winstreak: number; soup_kills: number; soup_level: number; soup_level_badge: MushGameBadge; soup_losses: number; soup_max_winstreak: number; soup_played: number; soup_solo_deaths: number; soup_solo_kills: number; soup_solo_losses: number; soup_solo_max_winstreak: number; soup_solo_played: number; soup_solo_wins: number; soup_solo_winstreak: number; soup_wins: number; soup_winstreak: number; soup_xp: number; sumo_level_badge: MushGameBadge; uhc_deaths: number; uhc_doubles_deaths: number; uhc_doubles_kills: number; uhc_doubles_losses: number; uhc_doubles_played: number; uhc_doubles_wins: number; uhc_doubles_winstreak: number; uhc_kills: number; uhc_level: number; uhc_level_badge: MushGameBadge; uhc_losses: number; uhc_max_winstreak: number; uhc_played: number; uhc_solo_deaths: number; uhc_solo_kills: number; uhc_solo_losses: number; uhc_solo_max_winstreak: number; uhc_solo_played: number; uhc_solo_wins: number; uhc_solo_winstreak: number; uhc_wins: number; uhc_winstreak: number; uhc_xp: number; } interface MushHungergamesRanking { hex_color: string; id: string; name: string; symbol: string; } interface MushHungergamesStats { coins: number; deaths: number; doublekit_ranking: MushHungergamesRanking; games_played: number; kd: number; kills: number; max_kills: number; minimush_ranking: MushHungergamesRanking; mode_doublekit_deaths: number; mode_doublekit_games_played: number; mode_doublekit_kd: number; mode_doublekit_kills: number; mode_doublekit_max_kills: number; mode_doublekit_rank_exp: number; mode_event_games_played: number; mode_hg_deaths: number; mode_hg_games_played: number; mode_hg_kd: number; mode_randomkit_deaths: number; mode_randomkit_games_played: number; mode_randomkit_kd: number; mode_randomkit_kills: number; mode_randomkit_max_kills: number; } interface MushMurderStats { coins_picked_up: number; deaths: number; kills: number; losses: number; played: number; wins: number; winstreak: number; innocent_deaths: number; innocent_killed_murderer: number; innocent_kills: number; innocent_losses: number; innocent_played: number; innocent_wins: number; innocent_winstreak: number; killed_murderer: number; } interface MushPartyStats { played: number; points: number; points_weekly: number; first_place: number; second_place: number; third_place: number; block_party_first_place: number; block_party_played: number; block_party_points: number; block_party_points_weekly: number; block_party_second_place: number; block_party_third_place: number; fisherman_first_place: number; fisherman_played: number; fisherman_points: number; fisherman_points_weekly: number; fisherman_second_place: number; fisherman_third_place: number; grappler_race_first_place: number; grappler_race_placed: number; grappler_race_played: number; grappler_race_points: number; grappler_race_points_weekly: number; grappler_race_second_place: number; grappler_race_third_place: number; kangaroo_race_first_place: number; kangaroo_race_played: number; kangaroo_race_points: number; kangaroo_race_points_weekly: number; kangaroo_race_second_place: number; kangaroo_race_third_place: number; lava_first_place: number; lava_played: number; lava_points: number; lava_points_weekly: number; lava_second_place: number; lava_third_place: number; mlg_sumo_first_place: number; mlg_sumo_played: number; mlg_sumo_points: number; mlg_sumo_points_weekly: number; mlg_sumo_second_place: number; mlg_sumo_third_place: number; oitc_first_place: number; oitc_played: number; oitc_points: number; oitc_points_weekly: number; oitc_second_place: number; oitc_third_place: number; race_first_place: number; race_placed: number; race_played: number; race_points: number; race_points_weekly: number; race_second_place: number; stomper_first_place: number; stomper_placed: number; stomper_played: number; stomper_points: number; stomper_second_place: number; stomper_third_place: number; tnt_run_first_place: number; tnt_run_played: number; tnt_run_points: number; tnt_run_points_weekly: number; tnt_run_second_place: number; tnt_run_third_place: number; } interface MushPlaytimeStats { all: number; bedwars: number; bedwars_1v1: number; bedwars_2v2: number; bedwars_3v3: number; bedwars_3v3v3v3: number; bedwars_4v4v4v4: number; bedwars_doubles: number; bedwars_infection_solo: number; bedwars_solo: number; bridgepractice: number; bridgepractice_extra_short: number; bridgepractice_infinite: number; bridgepractice_long: number; bridgepractice_short: number; ctf: number; duels: number; duels_bed_fight: number; duels_bed_fight_solo: number; duels_boxing: number; duels_boxing_solo: number; duels_bridge: number; duels_bridge_1v1v1v1: number; duels_bridge_doubles: number; duels_bridge_four: number; duels_bridge_solo: number; duels_combo: number; duels_combo_solo: number; duels_fireball_fight: number; duels_fireball_fight_solo: number; duels_gapple: number; duels_gapple_solo: number; duels_gladiator: number; duels_gladiator_doubles: number; duels_gladiator_hg_doubles: number; duels_gladiator_hg_solo: number; duels_gladiator_solo: number; duels_lava: number; duels_lava_solo: number; duels_no_debuff: number; duels_no_debuff_solo: number; duels_soup: number; duels_soup_doubles: number; duels_soup_solo: number; duels_sumo: number; duels_sumo_solo: number; duels_uhc: number; duels_uhc_doubles: number; duels_uhc_four: number; duels_uhc_solo: number; hungergames: number; hungergames_doublekit: number; hungergames_event: number; hungergames_randomkit: number; lobby: number; lobby_bedwars: number; lobby_build: number; lobby_ctf: number; lobby_duels: number; lobby_duels_gladiator: number; lobby_duels_soup: number; lobby_hungergames: number; lobby_main: number; lobby_pvp: number; lobby_skywars: number; murder: number; party: number; party_block_party: number; party_fisherman: number; party_game_end: number; party_game_select: number; party_grappler_race: number; party_kangaroo_race: number; party_lava: number; party_mlg_sumo: number; party_oitc: number; party_race: number; party_stomper: number; party_tnt_run: number; place: number; place_2024: number; pvp: number; pvp_arena: number; pvp_challenges: number; pvp_fps: number; pvp_lava: number; pvp_mlg: number; quickbuilders: number; seek: number; skywars: number; skywars_1v1: number; skywars_solo: number; skywars_team: number; } interface MushPvpStats { "1v1_losses": number; "1v1_wins": number; arena_deaths: number; arena_kills: number; arena_kills_weekly: number; arena_killstreak: number; arena_max_killstreak: number; challenges_drops_max_damage_taken: number; challenges_drops_max_play_time: number; challenges_drops_plays: number; challenges_drops_total_damage_taken: number; challenges_drops_total_play_time: number; challenges_drops_total_soups_used: number; challenges_extreme_max_damage_taken: number; challenges_extreme_max_play_time: number; challenges_extreme_plays: number; challenges_extreme_total_damage_taken: number; challenges_extreme_total_play_time: number; challenges_extreme_total_soups_used: number; challenges_medium_max_damage_taken: number; challenges_medium_max_play_time: number; challenges_medium_plays: number; challenges_medium_total_damage_taken: number; challenges_medium_total_play_time: number; challenges_medium_total_soups_used: number; challenges_wither_max_damage_taken: number; challenges_wither_max_play_time: number; challenges_wither_plays: number; challenges_wither_total_damage_taken: number; challenges_wither_total_play_time: number; challenges_wither_total_soups_used: number; coins: number; deaths: number; fps_deaths: number; fps_kills: number; fps_killstreak: number; fps_max_killstreak: number; highest_killstreak: number; highest_winstreak: number; kills: number; mlg_hits: number; mlg_misses: number; mlg_streak_1: number; mlg_streak_2: number; mlg_streak_3: number; mlg_streak_4: number; } interface MushQuickBuildersStats { builds: number; losses: number; max_perfect_build_streak: number; perfect_build_streak: number; perfect_builds: number; played: number; wins: number; winstreak: number; xp: number; } interface MushSeekStats { hider_frozen: number; hider_max_winstreak: number; hider_played: number; hider_wins: number; hider_winstreak: number; kills: number; losses: number; max_winstreak: number; played: number; seeker_detected_hiders: number; seeker_kills: number; seeker_losses: number; seeker_played: number; seeker_winstreak: number; wins: number; winstreak: number; } interface MushSkyWarsStats { coins: number; deaths: number; deaths_normal: number; deaths_normal_kit_cannonner: number; deaths_normal_kit_default: number; deaths_normal_kit_ecologist: number; deaths_normal_kit_miner: number; deaths_normal_kit_none: number; deaths_normal_kit_scout: number; deaths_solo: number; deaths_solo_kit_default: number; deaths_solo_kit_ecologist: number; deaths_solo_kit_miner: number; deaths_solo_kit_none: number; deaths_solo_kit_scout: number; deaths_team: number; deaths_team_kit_cannonner: number; deaths_team_kit_ecologist: number; deaths_team_kit_none: number; deaths_team_kit_scout: number; games_played: number; games_played_1v1: number; games_played_1v1_kit_default: number; games_played_duels: number; games_played_duels_kit_default: number; games_played_normal: number; games_played_normal_kit_cannonner: number; games_played_normal_kit_default: number; games_played_normal_kit_ecologist: number; games_played_normal_kit_miner: number; games_played_normal_kit_none: number; games_played_normal_kit_scout: number; games_played_solo: number; games_played_solo_kit_default: number; games_played_solo_kit_ecologist: number; games_played_solo_kit_miner: number; games_played_solo_kit_none: number; games_played_solo_kit_scout: number; games_played_team: number; games_played_team_kit_cannonner: number; games_played_team_kit_ecologist: number; games_played_team_kit_none: number; games_played_team_kit_scout: number; kills: number; kills_normal: number; kills_normal_kit_cannonner: number; kills_normal_kit_default: number; kills_normal_kit_ecologist: number; kills_normal_kit_miner: number; kills_normal_kit_none: number; kills_normal_kit_scout: number; kills_solo: number; kills_solo_kit_default: number; kills_solo_kit_ecologist: number; kills_solo_kit_miner: number; kills_solo_kit_none: number; kills_solo_kit_scout: number; kills_team: number; kills_team_kit_cannonner: number; kills_team_kit_ecologist: number; kills_team_kit_none: number; kills_team_kit_scout: number; level: number; level_badge: MushGameBadge; losses: number; losses_normal: number; losses_normal_kit_cannonner: number; losses_normal_kit_default: number; losses_normal_kit_ecologist: number; losses_normal_kit_miner: number; losses_normal_kit_none: number; losses_normal_kit_scout: number; losses_solo: number; losses_solo_kit_default: number; losses_solo_kit_ecologist: number; losses_solo_kit_miner: number; losses_solo_kit_none: number; losses_solo_kit_scout: number; losses_team: number; losses_team_kit_cannonner: number; losses_team_kit_default: number; losses_team_kit_ecologist: number; losses_team_kit_none: number; losses_team_kit_scout: number; max_winstreak: number; max_winstreak_1v1: number; max_winstreak_duels: number; selected_cage: number; solo_selected_kit: number; souls: number; team_selected_kit: number; wins: number; wins_1v1: number; wins_1v1_kit_default: number; wins_duels: number; wins_duels_kit_default: number; wins_normal: number; wins_normal_kit_cannonner: number; wins_normal_kit_default: number; wins_normal_kit_ecologist: number; wins_normal_kit_miner: number; wins_normal_kit_none: number; wins_normal_kit_scout: number; wins_solo: number; wins_solo_kit_default: number; wins_solo_kit_ecologist: number; wins_solo_kit_miner: number; wins_solo_kit_none: number; wins_solo_kit_scout: number; wins_team: number; wins_team_kit_cannonner: number; wins_team_kit_default: number; wins_team_kit_ecologist: number; wins_team_kit_none: number; wins_team_kit_scout: number; winstreak: number; winstreak_1v1: number; winstreak_solo: number; winstreak_team: number; xp: number; } interface RawMushPlayerAccount { profile_id: number; type: string; unique_id: string; username: string; } interface MushPlayerAccount extends CamelCaseKeys { } interface MushPlayerTag { color: string; name: string; } interface MushPlayerSkin { hash: string; slim: boolean; } interface RawMushPlayerStats { bedwars: MushBedWarsStats; blockparty: MushBlockpartyStats; bridgepractice: MushBrigdepraticeStats; ctf: MushCTFStats; duels: MushDuelsStats; hungergames: MushHungergamesStats; murder: MushMurderStats; party: MushPartyStats; play_time: MushPlaytimeStats; pvp: MushPvpStats; quickbuilders: MushQuickBuildersStats; seek: MushSeekStats; skywars_r1: MushSkyWarsStats; } interface MushPlayerStats extends CamelCaseKeys { } interface RawMushPlayerInfo { account: RawMushPlayerAccount; best_tag: MushPlayerTag; profile_tag: MushPlayerTag; rank_tag: MushPlayerTag; connected: boolean; first_login: number; last_login: number; medal: string; medals: string[]; skin: MushPlayerSkin; stats: MushPlayerStats; tags: string[]; } interface MushPlayerInfo extends CamelCaseKeys { } type FetchMushPlayerResult = FetchResult; declare function fetchMushPlayerInfo(nickOrUUID: string): Promise; declare const mushLeaderboardGames: readonly ["bedwars", "skywars", "pvp", "party", "hg", "murder", "quickbuilders", "ctf"]; type MushLeaderboardGame = (typeof mushLeaderboardGames)[number]; type MushLeaderboardGameStats = "wins" | "losses" | "level" | "kills" | "final_kills" | "kd" | "coins" | "deaths" | "perfect_builds" | "builds" | "arena_kills" | "arena_deaths" | "arena_kdr" | "points" | "first_place" | "second_place" | "third_place" | "captures"; interface MushLeaderboardItem { position: number; color: string; account: MushPlayerAccount; avatarURL: string; game: MushLeaderboardGame; /** * This function takes the name of a statistic as an argument and returns its value. If the statistic does not exist for the selected game, it returns -1. * * - **wins** : `bedwars`, `hg`, `murder`, `quickbuilders`, `skywars` * - **losses** : `murder`, `quickbuilders`, `skywars` * - **level** : `bedwars`, `skywars` * - **kills** : `bedwars`, `ctf`, `hg`, `skywars` * - **final_kills** : `bedwars` * - **kd** : `hg` * - **coins** : `ctf`, `skywars` * - **deaths** : `hg` * - **perfect_builds** : `quickbuilders` * - **builds** : `quickbuilders` * - **arena_kills** : `pvp` * - **arena_deaths** : `pvp` * - **arena_kdr** : `pvp` * - **points** : `party` * - **first_place** : `party` * - **second_place** : `party` * - **third_place** : `party` * - **captures** : `ctf` */ get(stats: MushLeaderboardGameStats): number; } interface MushBedwarsLeaderboardItem extends MushLeaderboardItem { game: "bedwars"; "bedwars:level": number; "bedwars:wins": number; "bedwars:kills": number; "bedwars:final_kills": number; } interface MushCTFLeaderboardItem extends MushLeaderboardItem { game: "ctf"; "ctf:captures": number; "ctf:kills": number; "ctf:coins": number; } interface MushHGLeaderboardItem extends MushLeaderboardItem { game: "hg"; "hungergames:wins": number; "hungergames:kills": number; "hungergames:deaths": number; "hungergames:kd": number; } interface MushMurderLeaderboardItem extends MushLeaderboardItem { game: "murder"; "murder:wins": number; "murder:losses": number; } interface MushPartyLeaderboardItem extends MushLeaderboardItem { game: "party"; "party:points": number; "party:first_place": number; "party:second_place": number; "party:third_place": number; } interface MushPvpLeaderboardItem extends MushLeaderboardItem { game: "pvp"; "pvp:arena_kills": number; "pvp:arena_deaths": number; "pvp:arena_kdr": number; } interface MushQuickbuildersLeaderboardItem extends MushLeaderboardItem { game: "quickbuilders"; "quickbuilders:wins": number; "quickbuilders:losses": number; "quickbuilders:perfect_builds": number; "quickbuilders:builds": number; } interface MushSkywarsLeaderboardItem extends MushLeaderboardItem { game: "skywars"; "skywars_r1:level": number; "skywars_r1:wins": number; "skywars_r1:kills": number; "skywars_r1:losses": number; "skywars_r1:coins": number; } type MushLeaderboard = { bedwars: MushBedwarsLeaderboardItem[]; skywars: MushSkywarsLeaderboardItem[]; pvp: MushPvpLeaderboardItem[]; party: MushPartyLeaderboardItem[]; ctf: MushCTFLeaderboardItem[]; hg: MushHGLeaderboardItem[]; murder: MushMurderLeaderboardItem[]; quickbuilders: MushQuickbuildersLeaderboardItem[]; }[T]; type FetchMushLeaderboardResult = FetchResult>; declare function fetchMushLeaderboard(game: T): Promise>; interface ServerDebugInfo { ping: boolean; query: boolean; bedrock: boolean; srv: boolean; querymismatch: boolean; ipinsrv: boolean; cnameinsrv: boolean; animatedmotd: boolean; cachehit: boolean; cachetime: number; cacheexpire: number; apiversion: number; } interface OnlineServerInfo { online: true; ip: string; port: number; hostname?: string; debug: ServerDebugInfo; version: string; protocol?: { version: number; name?: string; }; icon?: string; software?: string; map?: { raw: string; clean: string; html: string; }; gamemode?: string; serverid?: string; eula_blocked?: boolean; motd: { raw: string[]; clean: string[]; html: string[]; }; players: { online: number; max: number; list?: Array<{ name: string; uuid: string; }>; }; plugins?: Array<{ name: string; version: string; }>; mods?: Array<{ name: string; version: string; }>; info?: { raw: string[]; clean: string[]; html: string[]; }; } interface OfflineServerInfo { online: false; ip: string; port: number; hostname?: string; debug: ServerDebugInfo & { error: { ping: string; query: string; }; }; } type ServerInfo = OnlineServerInfo | OfflineServerInfo; declare function fetchServerStatus(ip: string, bedrock?: boolean): Promise; declare function isServerOnline(ip: string, bedrock?: boolean): Promise; type FetchServerIconResult = FetchResult<{ buffer: Buffer; url: string; response: Response; }>; declare function fetchServerIcon(ip: string): Promise; export { type FetchMinecraftProfileResult, type FetchMinecraftProfileSessionResult, type FetchMushLeaderboardResult, type FetchMushPlayerResult, type FetchServerIconResult, type FetchSkinInfoResult, type FetchSkinRenderResult, type MinecraftProfile, type MinecraftProfileSession, type MushBedWarsStats, type MushBedwarsLeaderboardItem, type MushBlockpartyStats, type MushBrigdepraticeStats, type MushCTFLeaderboardItem, type MushCTFStats, type MushDuelsStats, type MushGameBadge, type MushHGLeaderboardItem, type MushHungergamesRanking, type MushHungergamesStats, type MushLeaderboard, type MushLeaderboardGame, type MushLeaderboardGameStats, type MushLeaderboardItem, type MushMurderLeaderboardItem, type MushMurderStats, type MushPartyLeaderboardItem, type MushPartyStats, type MushPlayerAccount, type MushPlayerInfo, type MushPlayerSkin, type MushPlayerStats, type MushPlayerTag, type MushPlaytimeStats, type MushPvpLeaderboardItem, type MushPvpStats, type MushQuickBuildersStats, type MushQuickbuildersLeaderboardItem, type MushSkywarsLeaderboardItem, type OfflineServerInfo, type OnlineServerInfo, type RawMushPlayerAccount, type RawMushPlayerInfo, type RawMushPlayerStats, RouteBases, type ServerDebugInfo, type ServerInfo, type SkinInfo, type SkinModelType, type SkinRenderCameraCoords, type SkinRenderCameraOptions, type SkinRenderCrop, type SkinRenderLightingOptions, type SkinRenderModelOptions, type SkinRenderOptions, type SkinRenderType, type SkinRenderTypeCrop, fetchMinecraftProfile, fetchMinecraftProfileSession, fetchMushLeaderboard, fetchMushPlayerInfo, fetchServerIcon, fetchServerStatus, fetchSkinInfo, fetchSkinRender, isServerOnline, mushLeaderboardGames, skinRenderCrops, skinRenderTypeCrops, skinRenderTypes, skinRoute };