qpay
Version:
QPay API integration
52 lines (51 loc) • 2.35 kB
TypeScript
import { QPayCreateInvoice, QPayCreateInvoiceResponse, QPayGetInvoiceResponse, Setup } from "./types";
/**
* QPay class нь QPay API-тай харилцан.
* Энэ нь токен үүсгэх, нэхэмжлэх үүсгэх, нэхэмжлэхийн дэлгэрэнгүй мэдээлэл авах зэрэг үйлдлүүдийг хийнэ.
*/
declare class QPay {
private constructor();
private static instance;
private readonly host;
private accessToken;
private username;
private password;
private invoiceCode;
/**
* QPay-ийн цорын ганц instance үүссэн эсэхийг шалгана.
*/
private static ensureInstance;
/**
* QPay-ийн instance шаардлагатай нэвтрэх мэдээлэл болон нэхэмжлэхийн кодоор тохируулна.
* @param setup - Хэрэглэгчийн нэр, нууц үг, нэхэмжлэхийн кодыг агуулна.
*/
static setup({ username, password, invoice_code }: Setup): void;
/**
* QPay-ийн instance буцаана.
*/
static getInstance(): QPay;
/**
* QPay API-аас шинэ нэвтрэх токен авна.
*/
private fetchToken;
/**
* QPay API руу эрх бүхий HTTP хүсэлт илгээнэ.
* Токен авах болон эрхийн толгойг автоматаар зохицуулна.
* @param url - API-ийн URL.
* @param method - HTTP method (get, post, put, delete).
* @param data - POST болон PUT хүсэлтүүдийн нэмэлт мэдээлэл.
*/
private makeAuthorizedRequest;
/**
* QPay системд шинэ нэхэмжлэх үүсгэнэ.
* @param qpayInvoice - Үүсгэх нэхэмжлэхийн дэлгэрэнгүй мэдээлэл.
*/
createInvoice(qpayInvoice: QPayCreateInvoice): Promise<import("axios").AxiosResponse<QPayCreateInvoiceResponse, any>>;
/**
* Нэхэмжлэхийн ID-аар нэхэмжлэхийн дэлгэрэнгүйг авна.
* @param id - Нэхэмжлэхийн цорын ганц танигч.
*/
getInvoice(id: string): Promise<import("axios").AxiosResponse<QPayGetInvoiceResponse, any>>;
}
export default QPay;
export * from "./types";