UNPKG

mnotify-ts-sdk

Version:

Modern, zero-dependency TypeScript SDK for mNotify BMS API - Type-safe SMS, contacts, and account management with Railway-Oriented Programming

63 lines 3.18 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.compact = exports.chunk = exports.isValidPhone = exports.normalizePhone = exports.toArray = exports.combine = exports.tryCatchAsync = exports.tryCatch = exports.err = exports.ok = exports.MNotifyError = exports.MNotify = void 0; const HttpClient_1 = require("./client/HttpClient"); const SMSService_1 = require("./sms/SMSService"); const ContactService_1 = require("./contacts/ContactService"); const AccountService_1 = require("./account/AccountService"); const TemplateService_1 = require("./templates/TemplateService"); const GroupService_1 = require("./groups/GroupService"); const MNotifyError_1 = require("./errors/MNotifyError"); Object.defineProperty(exports, "MNotifyError", { enumerable: true, get: function () { return MNotifyError_1.MNotifyError; } }); /** * Main MNotify SDK client * * @example * ```typescript * const mnotify = new MNotify({ * apiKey: process.env.MNOTIFY_API_KEY! * }); * * // Send SMS * const response = await mnotify.sms.sendQuickBulkSMS({ * recipient: ['233200000000'], * sender: 'MyApp', * message: 'Hello!' * }); * * // Check balance * const balance = await mnotify.account.getBalance(); * * // Manage contacts * const contact = await mnotify.contacts.createContact({ * phone: '233200000000', * firstname: 'John', * lastname: 'Doe' * }); * ``` */ class MNotify { constructor(config) { const client = new HttpClient_1.HttpClient(config); this.sms = new SMSService_1.SMSService(client); this.contacts = new ContactService_1.ContactService(client); this.account = new AccountService_1.AccountService(client); this.templates = new TemplateService_1.TemplateService(client); this.groups = new GroupService_1.GroupService(client); } } exports.MNotify = MNotify; var Result_1 = require("./types/Result"); Object.defineProperty(exports, "ok", { enumerable: true, get: function () { return Result_1.ok; } }); Object.defineProperty(exports, "err", { enumerable: true, get: function () { return Result_1.err; } }); Object.defineProperty(exports, "tryCatch", { enumerable: true, get: function () { return Result_1.tryCatch; } }); Object.defineProperty(exports, "tryCatchAsync", { enumerable: true, get: function () { return Result_1.tryCatchAsync; } }); Object.defineProperty(exports, "combine", { enumerable: true, get: function () { return Result_1.combine; } }); // Export utility functions for advanced use cases var helpers_1 = require("./utils/helpers"); Object.defineProperty(exports, "toArray", { enumerable: true, get: function () { return helpers_1.toArray; } }); Object.defineProperty(exports, "normalizePhone", { enumerable: true, get: function () { return helpers_1.normalizePhone; } }); Object.defineProperty(exports, "isValidPhone", { enumerable: true, get: function () { return helpers_1.isValidPhone; } }); Object.defineProperty(exports, "chunk", { enumerable: true, get: function () { return helpers_1.chunk; } }); Object.defineProperty(exports, "compact", { enumerable: true, get: function () { return helpers_1.compact; } }); //# sourceMappingURL=index.js.map