UNPKG

@nicotordev/flowcl-pagos

Version:

SDK en TypeScript para integrar pagos con la API de Flow.cl de manera sencilla y segura.

109 lines 6.42 kB
import { FlowEditDiscountCouponResponse, FlowCreateDiscountCouponRequest, FlowCreateDiscountCouponResponse, FlowEditDiscountCouponRequest, FlowDeleteDiscountCouponResponse, FlowGetDiscountCouponResponse, FlowListDiscountCouponsRequest, FlowListDiscountCouponsResponse } from '../types/flow'; /** * Permite crear cupones de descuento para ser aplicados a suscripciones o clientes */ export default class FlowCoupons { private apiKey; private secretKey; private axiosInstance; /** * Este servicio permite crear un cupón de descuento * @param {FlowCreateDiscountCouponRequest} data Datos para crear el cupón de descuento * @returns {Promise<FlowCreateDiscountCouponResponse>} Respuesta de la API * @throws {FlowCreateDiscountCouponError} Si hay problemas al crear el cupón de descuento * @throws {FlowAPIError} Si hay problemas con la API de Flow */ create: (data: FlowCreateDiscountCouponRequest) => Promise<FlowCreateDiscountCouponResponse>; /** * Este servicio permite editar un cupón de descuento. Sólo se puede editar el nombre de un cupón. * @param {FlowEditDiscountCouponRequest} data Datos para editar el cupón de descuento * @returns {Promise<FlowEditDiscountCouponResponse>} Respuesta de la API * @throws {FlowEditDiscountCouponError} Si hay problemas al editar el cupón de descuento * @throws {FlowAPIError} Si hay problemas con la API de Flow */ edit: (data: FlowEditDiscountCouponRequest) => Promise<FlowEditDiscountCouponResponse>; /** * Este servicio permite eliminar un cupón de descuento. Eliminar un cupón de descuento no elimina los descuentos aplicados a clientes o suscripciones, sólo no permite volver a aplicar este cupón * @param {string} couponId ID del cupón de descuento * @returns {Promise<FlowDeleteDiscountCouponResponse>} Respuesta de la API * @throws {FlowEditDiscountCouponError} Si hay problemas al eliminar el cupón de descuento * @throws {FlowAPIError} Si hay problemas con la API de Flow */ delete: (couponId: string) => Promise<FlowDeleteDiscountCouponResponse>; /** * Este servicio permite obtener los datos de un cupón de descuento * @param {string} couponId ID del cupón de descuento * @returns {Promise<FlowGetDiscountCouponResponse>} Respuesta de la API * @throws {FlowGetDiscountCouponError} Si hay problemas al obtener el cupón de descuento * @throws {FlowAPIError} Si hay problemas con la API de Flow */ get: (couponId: string) => Promise<FlowGetDiscountCouponResponse>; /** * Este servicio permite la lista de cupones de descuento * @param {FlowListDiscountCouponsRequest} data Datos para listar los cupones de descuento * @returns {Promise<FlowListDiscountCouponsResponse>} Respuesta de la API * @throws {FlowListDiscountCouponsError} Si hay problemas al listar los cupones de descuento * @throws {FlowAPIError} Si hay problemas con la API de Flow */ list: (data: FlowListDiscountCouponsRequest) => Promise<FlowListDiscountCouponsResponse>; /** * Constructor de la clase FlowClient. * @param apiKey Clave de API proporcionada por Flow. * @param secretKey Clave secreta proporcionada por Flow. * @param baseURL URL base de la API de Flow. * @throws FlowAuthenticationError Si no se proporciona apiKey o secretKey. */ constructor(apiKey: string, secretKey: string, baseURL: string); /** * Realiza una petición a la API de Flow. * @param {string} endpoint URL del endpoint de la API. * @param {string} data Datos a enviar en la petición. * @param {'post' | 'get'} method Método de la petición (POST o GET). * @param {(e: unknown) => never} error Error a lanzar en caso de error. * @returns {Promise<T>} Respuesta de la API. * @throws {FlowAPIError} Si hay problemas con la API de Flow. * @throws {Error} Si hay problemas al realizar la petición. */ private request; /** * Este servicio permite crear un cupón de descuento * @param {FlowCreateDiscountCouponRequest} data Datos para crear el cupón de descuento * @returns {Promise<FlowCreateDiscountCouponResponse>} Respuesta de la API * @throws {FlowCreateDiscountCouponError} Si hay problemas al crear el cupón de descuento * @throws {FlowAPIError} Si hay problemas con la API de Flow */ private createDiscountCoupon; /** * Este servicio permite editar un cupón de descuento. Sólo se puede editar el nombre de un cupón. * @param {FlowEditDiscountCouponRequest} data Datos para editar el cupón de descuento * @returns {Promise<FlowEditDiscountCouponResponse>} Respuesta de la API * @throws {FlowEditDiscountCouponError} Si hay problemas al editar el cupón de descuento * @throws {FlowAPIError} Si hay problemas con la API de Flow */ private editDiscountCoupon; /** * Este servicio permite eliminar un cupón de descuento. Eliminar un cupón de descuento no elimina los descuentos aplicados a clientes o suscripciones, sólo no permite volver a aplicar este cupón * @param {string} couponId ID del cupón de descuento * @returns {Promise<FlowDeleteDiscountCouponResponse>} Respuesta de la API * @throws {FlowEditDiscountCouponError} Si hay problemas al eliminar el cupón de descuento * @throws {FlowAPIError} Si hay problemas con la API de Flow */ private deleteDiscountCoupon; /** * Este servicio permite obtener los datos de un cupón de descuento * @param {string} couponId ID del cupón de descuento * @returns {Promise<FlowGetDiscountCouponResponse>} Respuesta de la API * @throws {FlowGetDiscountCouponError} Si hay problemas al obtener el cupón de descuento * @throws {FlowAPIError} Si hay problemas con la API de Flow */ private getDiscountCoupon; /** * Este servicio permite la lista de cupones de descuento * @param {FlowListDiscountCouponsRequest} data Datos para listar los cupones de descuento * @returns {Promise<FlowListDiscountCouponsResponse>} Respuesta de la API * @throws {FlowListDiscountCouponsError} Si hay problemas al listar los cupones de descuento * @throws {FlowAPIError} Si hay problemas con la API de Flow */ private listDiscountCoupons; } //# sourceMappingURL=flow.coupons.d.ts.map