UNPKG

jspteroapi

Version:

A pterodactyl v1 api using undici

92 lines (91 loc) 3.92 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.subUserMethods = void 0; class subUserMethods { client; constructor(client) { this.client = client; } /** * @param serverId - ID of the server to get (In the settings tab of server/in link) * @returns SubUser[] * @example * ```ts * const res = await client.getAllSubUsers('c2f5a3b6') // res = SubUser[] * ``` * @example * ```ts * client.getAllSubUsers('c2f5a3b6').then((res) => console.log(res)) // res = SubUser[] * ``` */ getAllSubUsers = async (serverId) => { return this.client.request('GET', null, 'data', `/api/client/servers/${serverId}/users`); }; /** * @param serverId - ID of the server to get (In the settings tab of server/in link) * @param subUserId - UUID of the subuser to get * @returns SubUserAttributes * @example * ```ts * const res = await client.getSubUserInfo('c2f5a3b6', '60a7aec3-e17d-4aa9-abb3-56d944d204b4') // res = SubUserAttributes * ``` * @example * ```ts * client.getSubUserInfo('c2f5a3b6', '60a7aec3-e17d-4aa9-abb3-56d944d204b4').then((res) => console.log(res)) // res = SubUserAttributes * ``` */ getSubUserInfo = async (serverId, subUserId) => { return this.client.request('GET', null, 'attributes', `/api/client/servers/${serverId}/users/${subUserId}`); }; /** * @param serverId - ID of the server to get (In the settings tab of server/in link) * @param email - Email of the subuser * @param permission - Permission of the subuser * @returns SubUserAttributes * @example * ```ts * const res = await client.createSubUser('c2f5a3b6', 'api@gmail.com', ['control.console']) // res = SubUserAttributes * ``` * @example * ```ts * client.createSubUser('c2f5a3b6', 'api@gmail.com', ['control.console']).then((res) => console.log(res)) // res = SubUserAttributes * ``` */ createSubUser = async (serverId, email, permissions) => { return this.client.request('POST', { email, permissions }, 'attributes', `/api/client/servers/${serverId}/users`); }; /** * @param serverId - ID of the server to get (In the settings tab of server/in link) * @param subUserId - UUID of the subuser to get * @param permission - Permission of the subuser * @returns SubUserAttributes * @example * ```ts * const res = await client.updateSubUserPermissions('c2f5a3b6', '60a7aec3-e17d-4aa9-abb3-56d944d204b4', ['control.console']) // res = SubUserAttributes * ``` * @example * ```ts * client.updateSubUserPermissions('c2f5a3b6', '60a7aec3-e17d-4aa9-abb3-56d944d204b4', ['control.console']).then((res) => console.log(res)) // res = SubUserAttributes * ``` */ updateSubUserPermissions = async (serverId, subUserId, permissions) => { return this.client.request('POST', { permissions }, 'attributes', `/api/client/servers/${serverId}/users/${subUserId}`); }; /** * @param serverId - ID of the server to get (In the settings tab of server/in link) * @param subUserId - UUID of the subuser to get * @returns If successful returns Successfuly deleted SubUser! * @example * ```ts * const res = await client.deleteSubUser('c2f5a3b6', '60a7aec3-e17d-4aa9-abb3-56d944d204b4') // res = Successfuly deleted SubUser! * ``` * @example * ```ts * client.deleteSubUser('c2f5a3b6', '60a7aec3-e17d-4aa9-abb3-56d944d204b4').then((res) => console.log(res)) // res = Successfuly deleted SubUser! * ``` */ deleteSubUser = async (serverId, subUserId) => { return this.client.request('DELETE', null, 'Successfuly deleted SubUser!', `/api/client/servers/${serverId}/users/${subUserId}`); }; } exports.subUserMethods = subUserMethods;