tyntec-sdk
Version:
TypeScript SDK for Tyntec Conversations API V3
29 lines (28 loc) • 1.01 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.tyntecClient = tyntecClient;
exports.tyntec = tyntec;
// src/tyntec/index.ts ─── public SDK surface
const requestHttp_1 = require("./requestHttp");
const messages_1 = require("./messages");
const templates_1 = require("./templates");
const templatesManagement_1 = require("./templatesManagement");
let cached = null;
/** Initialise once (e.g. in app bootstrap) */
function tyntecClient(cfg) {
if (!cached) {
const http = (0, requestHttp_1.requestHttp)(cfg); // cfg closes over every call
cached = {
...(0, messages_1.createMessageApi)(http, cfg),
...(0, templates_1.createTemplateApi)(http, cfg),
...(0, templatesManagement_1.createTemplateManagementApi)(http, cfg),
};
}
return cached;
}
/** Safe getter anywhere in code */
function tyntec() {
if (!cached)
throw new Error('Call initTyntec() before first use');
return cached;
}