paystack-sdk
Version:
Paystack SDK written in Typescript
72 lines (71 loc) • 2.52 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.Plan = void 0;
/**
* ## Plans
* The Plans API allows you create and manage installment
* payment options on your integration
* @class Plan
*/
class Plan {
constructor(http) {
this.http = http;
}
/**
* ### Create Plan
* Create a plan on your integration
* @param {CreatePlan} data Body Param
* @returns {Promise<PlanResponse | BadRequest>}
*/
create(data) {
return __awaiter(this, void 0, void 0, function* () {
return yield this.http.post('/plan', JSON.stringify(data));
});
}
/**
* ### List Plans
* List plans available on your integration
* @param queryParams Query Parameters
* @returns {Promise<PlanResponse | BadRequest>}
*/
list(queryParams) {
return __awaiter(this, void 0, void 0, function* () {
return yield this.http.get('/plan', {
params: Object.assign({}, queryParams),
});
});
}
/**
* ### Fetch Plan
* Get details of a plan on your integration
* @param id The plan `ID` or `code` you want to fetch
* @returns {Promise<PlanResponse | BadRequest>}
*/
fetch(id) {
return __awaiter(this, void 0, void 0, function* () {
return yield this.http.get(`/plan/${id}`);
});
}
/**
* ### Update Plan
* Update a plan details on your integration
* @param id Plans's `ID` or `code`
* @param {UpdatePlan} data Update Plan Data
* @returns {Promise<PlanResponse | BadRequest>}
*/
update(id, data) {
return __awaiter(this, void 0, void 0, function* () {
return yield this.http.put(`/plan/${id}`, JSON.stringify(data));
});
}
}
exports.Plan = Plan;