pterowrap
Version:
A node.js wrapper for Pterodactyl API
45 lines (44 loc) • 1.67 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const Backup_1 = __importDefault(require("../../../structures/client/server/Backup"));
const Util_1 = __importDefault(require("../../../utils/Util"));
class BackupManager {
constructor(client, _parentServer) {
this.client = client;
this._parentServer = _parentServer;
}
list(options = {}) {
return new Promise(async (resolve, reject) => {
try {
resolve(await Util_1.default.handlePagination(this.client, "backups", options, Backup_1.default, this._parentServer));
}
catch (e) {
reject(e);
}
});
}
get(uuid) {
return new Promise(async (resolve, reject) => {
try {
resolve(new Backup_1.default(this.client, (await this.client.call({ endpoint: `servers/${this._parentServer.identifier}/backups/${uuid}` })).data, this._parentServer));
}
catch (e) {
reject(e);
}
});
}
create() {
return new Promise(async (resolve, reject) => {
try {
resolve(new Backup_1.default(this.client, (await this.client.call({ endpoint: `servers/${this._parentServer.identifier}/backups`, method: "POST" })).data, this._parentServer));
}
catch (e) {
reject(e);
}
});
}
}
exports.default = BackupManager;