@applica-software-guru/persona-sdk 0.1.23 → 0.1.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
- "use strict";var B=Object.defineProperty;var E=(o,t,e)=>t in o?B(o,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):o[t]=e;var c=(o,t,e)=>E(o,typeof t!="symbol"?t+"":t,e);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});class p extends Error{constructor(e,s){super(`API Error: ${e} - ${s}`);c(this,"statusCode");c(this,"body");this.statusCode=e,this.body=s}}class g{constructor(t){this.apiKey=t}applyHeaders(t){t.set("x-persona-apikey",this.apiKey)}getCredentials(){return this.apiKey}}class u{constructor(t,e){c(this,"baseUrl");c(this,"authProvider");this.baseUrl=t,this.authProvider=typeof e=="string"?new g(e):e}getBaseUrl(){return this.baseUrl}getAuthProvider(){return this.authProvider}normalizePageParams(t,e){return{page:t===void 0||t<1?1:t,size:e===void 0||e<1?20:e}}buildHeaders(){const t=new Headers;return t.set("Content-Type","application/json"),this.authProvider.applyHeaders(t),t}buildUrl(t,e){const s=new URL(this.baseUrl+t);return e&&Object.entries(e).forEach(([r,i])=>{i!=null&&s.searchParams.set(r,String(i))}),s.toString()}async handleResponse(t){if(!t.ok){const s=await t.text();throw new p(t.status,s)}const e=await t.text();return e?JSON.parse(e):void 0}async httpGet(t,e){const s=await fetch(this.buildUrl(t,e),{method:"GET",headers:this.buildHeaders()});return this.handleResponse(s)}async httpPost(t,e,s){const r=await fetch(this.buildUrl(t,s),{method:"POST",headers:this.buildHeaders(),body:e?JSON.stringify(e):void 0});return this.handleResponse(r)}async httpPut(t,e){const s=await fetch(this.baseUrl+t,{method:"PUT",headers:this.buildHeaders(),body:JSON.stringify(e)});return this.handleResponse(s)}async httpPatch(t,e){const s=await fetch(this.baseUrl+t,{method:"PATCH",headers:this.buildHeaders(),body:JSON.stringify(e)});return this.handleResponse(s)}async httpDelete(t){const e=await fetch(this.baseUrl+t,{method:"DELETE",headers:this.buildHeaders()});if(!e.ok){const s=await e.text();throw new p(e.status,s)}}}class d extends u{constructor(e,s,r){super(e,s);c(this,"billingBaseUrl");this.billingBaseUrl=(r||e).replace(/\/$/,"")}async list(e,s,r){const{page:i,size:n}=this.normalizePageParams(s,r),a={page:i,size:n};return e&&(a.keyword=e),this.httpGet("/projects",a)}async get(e){return this.httpGet("/projects/"+e)}async getMine(){return this.httpGet("/projects/mine")}async create(e){return this.httpPost("/projects",e)}async update(e){return this.httpPut("/projects/"+e.projectId,e)}async remove(e){await this.httpDelete("/projects/"+e)}async getSubscription(e){return this.billingRequest("/projects/"+e+"/subscription","GET")}async changeSubscriptionPlan(e,s){return this.billingRequest("/projects/"+e+"/subscription/actions/change-plan","POST",s)}async addSubscriptionCredits(e,s){return this.billingRequest("/projects/"+e+"/subscription/actions/add-credits","POST",s)}async setInfiniteCredits(e,s){return this.billingRequest("/projects/"+e+"/subscription/actions/set-infinite-credits","POST",s)}async billingRequest(e,s,r){const i=new Headers;i.set("Content-Type","application/json"),this.getAuthProvider().applyHeaders(i);const n=await fetch(this.billingBaseUrl+e,{method:s,headers:i,body:r?JSON.stringify(r):void 0});if(!n.ok){const l=await n.text();throw new p(n.status,l)}const a=await n.text();return a?JSON.parse(a):void 0}}class y extends u{constructor(t,e){super(t,e)}async list(t,e,s,r){const{page:i,size:n}=this.normalizePageParams(e,s),a={page:i,size:n,...r};return t&&(a.keyword=t),this.httpGet("/agents",a)}async get(t){return this.httpGet("/agents/"+t)}async create(t){return this.httpPost("/agents",t)}async update(t){return this.httpPut("/agents/"+t.id,t)}async remove(t){await this.httpDelete("/agents/"+t)}async getSynthesizerSupportedVoices(t){return this.httpGet("/values/synthesizers/"+t+"/voices")}async listRevisions(t){return this.httpGet("/agents/"+t+"/revisions")}async getRevision(t,e){return this.httpGet("/agents/"+t+"/revisions/"+e)}async rollback(t,e){return this.httpPost("/agents/"+t+"/revisions/"+e+"/rollback",{})}async generateSystemInstructions(t,e){const s={prompt:t};return e&&(s.sessionId=e),(await this.httpPost("/agents/system-instructions",s)).instructions}async getArchitect(){return this.httpGet("/agents/architect")}}class m extends u{constructor(e,s,r){super(e,s);c(this,"knowledgeBaseId");this.knowledgeBaseId=r}async list(e,s,r){const{page:i,size:n}=this.normalizePageParams(s,r),a={page:i,size:n};return e&&(a.keyword=e),this.httpGet("/knowledge-bases/"+this.knowledgeBaseId+"/documents",a)}async upload(e){return this.httpPost("/knowledge-bases/"+this.knowledgeBaseId+"/documents",e)}async get(e){return this.httpGet("/knowledge-bases/"+this.knowledgeBaseId+"/documents/"+e)}async reprocess(e){return this.httpPost("/knowledge-bases/"+this.knowledgeBaseId+"/documents",{document_id:e})}async remove(e){await this.httpDelete("/knowledge-bases/"+this.knowledgeBaseId+"/documents/"+e)}}class P extends u{constructor(t,e){super(t,e)}async list(t,e,s,r){const{page:i,size:n}=this.normalizePageParams(e,s),a={page:i,size:n,...r};return t&&(a.keyword=t),this.httpGet("/knowledge-bases",a)}async get(t){return this.httpGet("/knowledge-bases/"+t)}async create(t){return this.httpPost("/knowledge-bases",t)}async update(t){return this.httpPut("/knowledge-bases/"+t.id,t)}async remove(t){await this.httpDelete("/knowledge-bases/"+t)}documents(t){return new m(this.getBaseUrl(),this.getAuthProvider(),t)}async searchChunks(t,e){return this.httpPost("/knowledge-bases/"+t+"/search",e)}}class w extends u{constructor(t,e){super(t,e)}async list(t,e,s){const{page:r,size:i}=this.normalizePageParams(e,s),n={page:r,size:i};return this.httpGet("/workflows/"+t+"/executions",n)}async get(t,e){return this.httpGet("/workflows/"+t+"/executions/"+e)}async run(t,e){return this.httpPost("/workflows/"+t+"/executions",e)}async queue(t,e){return this.httpPost("/workflows/"+t+"/executions/queue",e)}}class b extends u{constructor(t,e){super(t,e)}async list(t,e,s,r){const{page:i,size:n}=this.normalizePageParams(e,s),a={page:i,size:n,...r};return t&&(a.keyword=t),this.httpGet("/workflows",a)}async create(t){return this.httpPost("/workflows",t)}async update(t,e){return e.id=t,this.httpPut("/workflows/"+t,e)}async remove(t){await this.httpDelete("/workflows/"+t)}async get(t){return this.httpGet("/workflows/"+t)}executions(){return new w(this.getBaseUrl(),this.getAuthProvider())}async listRevisions(t){return this.httpGet("/workflows/"+t+"/revisions")}async getRevision(t,e){return this.httpGet("/workflows/"+t+"/revisions/"+e)}async rollback(t,e){return this.httpPost("/workflows/"+t+"/revisions/"+e+"/rollback",{})}}class v extends u{constructor(t,e){super(t,e)}async authorize(t,e){return this.httpPost("/credentials/"+t+"/authorize",e)}async handleOAuth2Callback(t,e,s,r){const i={code:e,state:s};return r&&(i.scope=r),this.httpGet("/credentials/"+t+"/oauth2/callback",i)}async list(){return this.httpGet("/credentials")}async getByProvider(t){return this.httpGet("/credentials/"+t)}async getById(t){return this.httpGet("/credentials/all/"+t)}async remove(t){await this.httpDelete("/credentials/all/"+t)}}class f extends u{constructor(t,e){super(t,e)}async list(t,e,s,r){const{page:i,size:n}=this.normalizePageParams(e,s),a={page:i,size:n,...r};return t&&(a.keyword=t),this.httpGet("/features/templates",a)}async get(t){return this.httpGet("/features/templates/"+t)}async create(t){return this.httpPost("/features/templates",t)}async update(t,e){return this.httpPut("/features/templates/"+t,e)}async patch(t,e){return this.httpPatch("/features/templates/"+t,e)}async remove(t){await this.httpDelete("/features/templates/"+t)}async getMcpAvailableTools(t,e){const s=e?{credentialsId:e}:void 0;return this.httpPost("/features/templates/mcp/available-tools",t,s)}}class G{constructor(t,e){c(this,"baseUrl");c(this,"auth");this.baseUrl=t,this.auth=e}templates(){return new f(this.baseUrl,this.auth)}}class k extends u{constructor(t,e){super(t,e)}async list(t,e,s){const{page:r,size:i}=this.normalizePageParams(e,s),n={page:r,size:i};return this.httpGet("/triggers/"+t+"/executions",n)}async execute(t,e){return this.httpPost("/triggers/"+t+"/executions",e)}async get(t){return this.httpGet("/triggers/executions/"+t)}async remove(t){await this.httpDelete("/triggers/executions/"+t)}}class z extends u{constructor(t,e){super(t,e)}async list(t,e,s,r){const{page:i,size:n}=this.normalizePageParams(e,s),a={page:i,size:n,...r};return t&&(a.keyword=t),this.httpGet("/triggers",a)}async create(t){return this.httpPost("/triggers",t)}async update(t,e){return this.httpPut("/triggers/"+t,e)}async remove(t){await this.httpDelete("/triggers/"+t)}async get(t){return this.httpGet("/triggers/"+t)}executions(){return new k(this.getBaseUrl(),this.getAuthProvider())}}class A extends u{constructor(t,e){super(t,e)}async list(t,e,s,r){const{page:i,size:n}=this.normalizePageParams(e,s),a={page:i,size:n,...r};return t&&(a.keyword=t),this.httpGet("/service-prices",a)}async get(t){return this.httpGet("/service-prices/"+t)}async create(t){return this.httpPost("/service-prices",t)}async update(t,e){return this.httpPut("/service-prices/"+t,e)}async remove(t){await this.httpDelete("/service-prices/"+t)}}class x extends u{constructor(t,e){super(t,e)}async list(t,e,s,r,i,n){const{page:a,size:l}=this.normalizePageParams(i,n),h={page:a,size:l};return t&&(h.keyword=t),e&&(h.status=e),s&&(h.agentId=s),r&&(h.userId=r),this.httpGet("/sessions",h)}async get(t){return this.httpGet("/sessions/"+t)}async getUsage(t){return this.httpGet("/sessions/"+t+"/usage")}async generateMessage(t,e){return this.httpPost("/sessions/"+t+"/messages",e)}async findMessages(t,e,s){const{page:r,size:i}=this.normalizePageParams(e,s),n={page:r,size:i};return this.httpGet("/sessions/"+t+"/messages",n)}async remove(t){await this.httpDelete("/sessions/"+t)}async rename(t,e){return this.httpPut("/sessions/"+t+"/name",{name:e})}}class S extends u{constructor(t,e){super(t,e)}async list(t,e,s,r){const{page:i,size:n}=this.normalizePageParams(e,s),a={page:i,size:n};return t&&(a.keyword=t),r&&(a.status=r),this.httpGet("/missions",a)}async get(t){return this.httpGet("/missions/"+t)}async create(t){return this.httpPost("/missions",t)}async update(t,e){return this.httpPut("/missions/"+t,e)}async remove(t){await this.httpDelete("/missions/"+t)}async generate(t){return this.httpPost("/missions/"+t+"/generate")}async execute(t){return this.httpPost("/missions/"+t+"/execute")}async retry(t){return this.httpPost("/missions/"+t+"/retry")}async replan(t){return this.httpPost("/missions/"+t+"/replan")}async sendInstruction(t,e){return this.httpPost("/missions/"+t+"/instructions",{instruction:e})}async stop(t){return this.httpPost("/missions/"+t+"/stop")}async resume(t){return this.httpPost("/missions/"+t+"/continue")}}class T{constructor(t,e){c(this,"baseUrl");c(this,"authProvider");this.baseUrl=(t||"https://persona.applica.guru/billing").replace(/\/$/,""),this.authProvider=e??null}buildHeaders(){const t=new Headers;return t.set("Content-Type","application/json"),this.authProvider&&(typeof this.authProvider=="string"?t.set("x-persona-apikey",this.authProvider):this.authProvider.applyHeaders(t)),t}async request(t,e,s){const r=await fetch(this.baseUrl+t,{method:e,headers:this.buildHeaders(),body:s?JSON.stringify(s):void 0});if(!r.ok){const n=await r.text();throw new p(r.status,n)}const i=await r.text();return i?JSON.parse(i):void 0}async createCustomer(t){return this.request("/customers","POST",t)}async updateCustomer(t,e){return this.request("/customers/"+t,"PUT",e)}async getCustomer(t){return this.request("/customers/"+t,"GET")}async saveCustomer(t){return this.request("/customers","POST",t)}async deleteCustomer(t){await this.request("/customers/"+t,"DELETE")}async createSubscription(t){return this.request("/customers/"+t.owner+"/subscription","POST",t)}async getSubscription(t){return this.request("/customers/"+t+"/subscription","GET")}async getProjectSubscription(t){return this.request("/projects/"+t+"/subscription","GET")}async changeProjectSubscriptionPlan(t,e){return this.request("/projects/"+t+"/subscription/actions/change-plan","POST",e)}async addProjectSubscriptionCredits(t,e){return this.request("/projects/"+t+"/subscription/actions/add-credits","POST",e)}async beginUpgrade(t,e){return this.request("/customers/"+t+"/subscription/actions/upgrade","POST",e)}async downgrade(t,e){return this.request("/customers/"+t+"/subscription/actions/downgrade","POST",e)}async mentorize(t,e){return this.request("/customers/"+t+"/subscription/actions/mentorize","POST",e)}async addCredits(t,e){return this.request("/customers/"+t+"/subscription/credits","POST",{credits:e})}async useCredits(t,e,s,r){const i={credits:e,services:s};return r&&(i.referenceId=r),this.request("/customers/"+t+"/subscription/credits","DELETE",i)}async getCredits(t){try{return(await this.request("/customers/"+t+"/subscription/credits","GET")).credits??0}catch{return 0}}async isValid(t){try{return(await this.request("/customers/"+t+"/subscription/valid","GET")).valid??!1}catch{return!1}}async listInvoices(t,e,s){const r=[];e&&r.push("date_from="+e),s&&r.push("date_to="+s);const i=r.length>0?"?"+r.join("&"):"";return this.request("/customers/"+t+"/invoices"+i,"GET")}async cancelSubscription(t){return this.request("/customers/"+t+"/subscription/actions/cancel","POST",{})}}class U extends u{constructor(t,e){super(t,e)}async get(t){return this.httpGet("/values/"+t)}async getLanguageCodes(){return this.httpGet("/values/language-codes")}async getModelNames(){return this.httpGet("/values/model-names")}async getModelProviders(){return this.httpGet("/values/model-providers")}async getKnowledgeTypes(){return this.httpGet("/values/knowledge-types")}async getCollaborationModes(){return this.httpGet("/values/collaboration-modes")}async getTranscriberNames(){return this.httpGet("/values/transcriber-names")}async getSynthesizerNames(){return this.httpGet("/values/synthesizer-names")}async getSynthesizerVoices(t){return this.httpGet("/values/synthesizers/"+t+"/voices")}async getStmTypes(){return this.httpGet("/values/stm-types")}async getDocumentExtractors(){return this.httpGet("/values/document-extractors")}async getEmbeddingModels(){return this.httpGet("/values/embedding-models")}async getQualityOptions(){return this.httpGet("/values/quality")}async getChunkSizeOptions(){return this.httpGet("/values/chunk-size")}async getFeatureTypes(){return this.httpGet("/values/feature-types")}async getRoles(){return this.httpGet("/values/roles")}async getServiceUnits(){return this.httpGet("/values/service-units")}async getTriggerSourceTypes(){return this.httpGet("/values/trigger-source-types")}async getTriggerDestinationTypes(){return this.httpGet("/values/trigger-destination-types")}}class C{constructor(t,e,s){c(this,"baseUrl");c(this,"workflowsBaseUrl");c(this,"billingBaseUrl");this.baseUrl=t,this.workflowsBaseUrl=e,this.billingBaseUrl=s||"https://persona.applica.guru/billing"}projects(t){return new d(this.baseUrl,t,this.billingBaseUrl)}agents(t){return new y(this.baseUrl,t)}knowledgeBases(t){return new P(this.baseUrl,t)}workflows(t){return new b(this.workflowsBaseUrl,t)}credentials(t){return new v(this.baseUrl,t)}features(t){return new G(this.baseUrl,t)}triggers(t){return new z(this.baseUrl,t)}servicePrices(t){return new A(this.baseUrl,t)}sessions(t){return new x(this.baseUrl,t)}missions(t){return new S(this.baseUrl,t)}billing(t){return new T(this.billingBaseUrl,t)}values(t){return new U(this.baseUrl,t)}}class O{constructor(t){this.token=t}applyHeaders(t){t.set("Authorization",`Bearer ${this.token}`)}getCredentials(){return this.token}}exports.AgentsApi=y;exports.ApiException=p;exports.ApiKeyAuthenticationProvider=g;exports.BearerTokenAuthenticationProvider=O;exports.BillingClient=T;exports.CredentialsApi=v;exports.FeatureTemplatesApi=f;exports.FeaturesApi=G;exports.KnowledgeBaseDocumentsApi=m;exports.KnowledgeBasesApi=P;exports.MissionsApi=S;exports.PersonaSdk=C;exports.ProjectsApi=d;exports.ServicePricesApi=A;exports.SessionsApi=x;exports.TriggerExecutionsApi=k;exports.TriggersApi=z;exports.ValuesApi=U;exports.WorkflowExecutionsApi=w;exports.WorkflowsApi=b;
1
+ "use strict";var B=Object.defineProperty;var E=(o,t,e)=>t in o?B(o,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):o[t]=e;var c=(o,t,e)=>E(o,typeof t!="symbol"?t+"":t,e);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});class p extends Error{constructor(e,s){super(`API Error: ${e} - ${s}`);c(this,"statusCode");c(this,"body");this.statusCode=e,this.body=s}}class g{constructor(t){this.apiKey=t}applyHeaders(t){t.set("x-persona-apikey",this.apiKey)}getCredentials(){return this.apiKey}}class u{constructor(t,e){c(this,"baseUrl");c(this,"authProvider");this.baseUrl=t,this.authProvider=typeof e=="string"?new g(e):e}getBaseUrl(){return this.baseUrl}getAuthProvider(){return this.authProvider}normalizePageParams(t,e){return{page:t===void 0||t<1?1:t,size:e===void 0||e<1?20:e}}buildHeaders(){const t=new Headers;return t.set("Content-Type","application/json"),this.authProvider.applyHeaders(t),t}buildUrl(t,e){const s=new URL(this.baseUrl+t);return e&&Object.entries(e).forEach(([r,i])=>{i!=null&&s.searchParams.set(r,String(i))}),s.toString()}async handleResponse(t){if(!t.ok){const s=await t.text();throw new p(t.status,s)}const e=await t.text();return e?JSON.parse(e):void 0}async httpGet(t,e){const s=await fetch(this.buildUrl(t,e),{method:"GET",headers:this.buildHeaders()});return this.handleResponse(s)}async httpPost(t,e,s){const r=await fetch(this.buildUrl(t,s),{method:"POST",headers:this.buildHeaders(),body:e?JSON.stringify(e):void 0});return this.handleResponse(r)}async httpPut(t,e){const s=await fetch(this.baseUrl+t,{method:"PUT",headers:this.buildHeaders(),body:JSON.stringify(e)});return this.handleResponse(s)}async httpPatch(t,e){const s=await fetch(this.baseUrl+t,{method:"PATCH",headers:this.buildHeaders(),body:JSON.stringify(e)});return this.handleResponse(s)}async httpDelete(t){const e=await fetch(this.baseUrl+t,{method:"DELETE",headers:this.buildHeaders()});if(!e.ok){const s=await e.text();throw new p(e.status,s)}}}class d extends u{constructor(e,s,r){super(e,s);c(this,"billingBaseUrl");this.billingBaseUrl=(r||e).replace(/\/$/,"")}async list(e,s,r){const{page:i,size:n}=this.normalizePageParams(s,r),a={page:i,size:n};return e&&(a.keyword=e),this.httpGet("/projects",a)}async get(e){return this.httpGet("/projects/"+e)}async getMine(){return this.httpGet("/projects/mine")}async create(e){return this.httpPost("/projects",e)}async update(e){return this.httpPut("/projects/"+e.projectId,e)}async remove(e){await this.httpDelete("/projects/"+e)}async duplicate(e,s){return this.httpPost("/projects/"+e+"/actions/duplicate",s)}async getSubscription(e){return this.billingRequest("/projects/"+e+"/subscription","GET")}async changeSubscriptionPlan(e,s){return this.billingRequest("/projects/"+e+"/subscription/actions/change-plan","POST",s)}async addSubscriptionCredits(e,s){return this.billingRequest("/projects/"+e+"/subscription/actions/add-credits","POST",s)}async setInfiniteCredits(e,s){return this.billingRequest("/projects/"+e+"/subscription/actions/set-infinite-credits","POST",s)}async billingRequest(e,s,r){const i=new Headers;i.set("Content-Type","application/json"),this.getAuthProvider().applyHeaders(i);const n=await fetch(this.billingBaseUrl+e,{method:s,headers:i,body:r?JSON.stringify(r):void 0});if(!n.ok){const l=await n.text();throw new p(n.status,l)}const a=await n.text();return a?JSON.parse(a):void 0}}class y extends u{constructor(t,e){super(t,e)}async list(t,e,s,r){const{page:i,size:n}=this.normalizePageParams(e,s),a={page:i,size:n,...r};return t&&(a.keyword=t),this.httpGet("/agents",a)}async get(t){return this.httpGet("/agents/"+t)}async create(t){return this.httpPost("/agents",t)}async update(t){return this.httpPut("/agents/"+t.id,t)}async remove(t){await this.httpDelete("/agents/"+t)}async getSynthesizerSupportedVoices(t){return this.httpGet("/values/synthesizers/"+t+"/voices")}async listRevisions(t){return this.httpGet("/agents/"+t+"/revisions")}async getRevision(t,e){return this.httpGet("/agents/"+t+"/revisions/"+e)}async rollback(t,e){return this.httpPost("/agents/"+t+"/revisions/"+e+"/rollback",{})}async generateSystemInstructions(t,e){const s={prompt:t};return e&&(s.sessionId=e),(await this.httpPost("/agents/system-instructions",s)).instructions}async getArchitect(){return this.httpGet("/agents/architect")}}class m extends u{constructor(e,s,r){super(e,s);c(this,"knowledgeBaseId");this.knowledgeBaseId=r}async list(e,s,r){const{page:i,size:n}=this.normalizePageParams(s,r),a={page:i,size:n};return e&&(a.keyword=e),this.httpGet("/knowledge-bases/"+this.knowledgeBaseId+"/documents",a)}async upload(e){return this.httpPost("/knowledge-bases/"+this.knowledgeBaseId+"/documents",e)}async get(e){return this.httpGet("/knowledge-bases/"+this.knowledgeBaseId+"/documents/"+e)}async reprocess(e){return this.httpPost("/knowledge-bases/"+this.knowledgeBaseId+"/documents",{document_id:e})}async remove(e){await this.httpDelete("/knowledge-bases/"+this.knowledgeBaseId+"/documents/"+e)}}class P extends u{constructor(t,e){super(t,e)}async list(t,e,s,r){const{page:i,size:n}=this.normalizePageParams(e,s),a={page:i,size:n,...r};return t&&(a.keyword=t),this.httpGet("/knowledge-bases",a)}async get(t){return this.httpGet("/knowledge-bases/"+t)}async create(t){return this.httpPost("/knowledge-bases",t)}async update(t){return this.httpPut("/knowledge-bases/"+t.id,t)}async remove(t){await this.httpDelete("/knowledge-bases/"+t)}documents(t){return new m(this.getBaseUrl(),this.getAuthProvider(),t)}async searchChunks(t,e){return this.httpPost("/knowledge-bases/"+t+"/search",e)}}class w extends u{constructor(t,e){super(t,e)}async list(t,e,s){const{page:r,size:i}=this.normalizePageParams(e,s),n={page:r,size:i};return this.httpGet("/workflows/"+t+"/executions",n)}async get(t,e){return this.httpGet("/workflows/"+t+"/executions/"+e)}async run(t,e){return this.httpPost("/workflows/"+t+"/executions",e)}async queue(t,e){return this.httpPost("/workflows/"+t+"/executions/queue",e)}}class b extends u{constructor(t,e){super(t,e)}async list(t,e,s,r){const{page:i,size:n}=this.normalizePageParams(e,s),a={page:i,size:n,...r};return t&&(a.keyword=t),this.httpGet("/workflows",a)}async create(t){return this.httpPost("/workflows",t)}async update(t,e){return e.id=t,this.httpPut("/workflows/"+t,e)}async remove(t){await this.httpDelete("/workflows/"+t)}async get(t){return this.httpGet("/workflows/"+t)}executions(){return new w(this.getBaseUrl(),this.getAuthProvider())}async listRevisions(t){return this.httpGet("/workflows/"+t+"/revisions")}async getRevision(t,e){return this.httpGet("/workflows/"+t+"/revisions/"+e)}async rollback(t,e){return this.httpPost("/workflows/"+t+"/revisions/"+e+"/rollback",{})}}class v extends u{constructor(t,e){super(t,e)}async authorize(t,e){return this.httpPost("/credentials/"+t+"/authorize",e)}async handleOAuth2Callback(t,e,s,r){const i={code:e,state:s};return r&&(i.scope=r),this.httpGet("/credentials/"+t+"/oauth2/callback",i)}async list(){return this.httpGet("/credentials")}async getByProvider(t){return this.httpGet("/credentials/"+t)}async getById(t){return this.httpGet("/credentials/all/"+t)}async remove(t){await this.httpDelete("/credentials/all/"+t)}}class f extends u{constructor(t,e){super(t,e)}async list(t,e,s,r){const{page:i,size:n}=this.normalizePageParams(e,s),a={page:i,size:n,...r};return t&&(a.keyword=t),this.httpGet("/features/templates",a)}async get(t){return this.httpGet("/features/templates/"+t)}async create(t){return this.httpPost("/features/templates",t)}async update(t,e){return this.httpPut("/features/templates/"+t,e)}async patch(t,e){return this.httpPatch("/features/templates/"+t,e)}async remove(t){await this.httpDelete("/features/templates/"+t)}async getMcpAvailableTools(t,e){const s=e?{credentialsId:e}:void 0;return this.httpPost("/features/templates/mcp/available-tools",t,s)}}class G{constructor(t,e){c(this,"baseUrl");c(this,"auth");this.baseUrl=t,this.auth=e}templates(){return new f(this.baseUrl,this.auth)}}class k extends u{constructor(t,e){super(t,e)}async list(t,e,s){const{page:r,size:i}=this.normalizePageParams(e,s),n={page:r,size:i};return this.httpGet("/triggers/"+t+"/executions",n)}async execute(t,e){return this.httpPost("/triggers/"+t+"/executions",e)}async get(t){return this.httpGet("/triggers/executions/"+t)}async remove(t){await this.httpDelete("/triggers/executions/"+t)}}class z extends u{constructor(t,e){super(t,e)}async list(t,e,s,r){const{page:i,size:n}=this.normalizePageParams(e,s),a={page:i,size:n,...r};return t&&(a.keyword=t),this.httpGet("/triggers",a)}async create(t){return this.httpPost("/triggers",t)}async update(t,e){return this.httpPut("/triggers/"+t,e)}async remove(t){await this.httpDelete("/triggers/"+t)}async get(t){return this.httpGet("/triggers/"+t)}executions(){return new k(this.getBaseUrl(),this.getAuthProvider())}}class A extends u{constructor(t,e){super(t,e)}async list(t,e,s,r){const{page:i,size:n}=this.normalizePageParams(e,s),a={page:i,size:n,...r};return t&&(a.keyword=t),this.httpGet("/service-prices",a)}async get(t){return this.httpGet("/service-prices/"+t)}async create(t){return this.httpPost("/service-prices",t)}async update(t,e){return this.httpPut("/service-prices/"+t,e)}async remove(t){await this.httpDelete("/service-prices/"+t)}}class x extends u{constructor(t,e){super(t,e)}async list(t,e,s,r,i,n){const{page:a,size:l}=this.normalizePageParams(i,n),h={page:a,size:l};return t&&(h.keyword=t),e&&(h.status=e),s&&(h.agentId=s),r&&(h.userId=r),this.httpGet("/sessions",h)}async get(t){return this.httpGet("/sessions/"+t)}async getUsage(t){return this.httpGet("/sessions/"+t+"/usage")}async generateMessage(t,e){return this.httpPost("/sessions/"+t+"/messages",e)}async findMessages(t,e,s){const{page:r,size:i}=this.normalizePageParams(e,s),n={page:r,size:i};return this.httpGet("/sessions/"+t+"/messages",n)}async remove(t){await this.httpDelete("/sessions/"+t)}async rename(t,e){return this.httpPut("/sessions/"+t+"/name",{name:e})}}class S extends u{constructor(t,e){super(t,e)}async list(t,e,s,r){const{page:i,size:n}=this.normalizePageParams(e,s),a={page:i,size:n};return t&&(a.keyword=t),r&&(a.status=r),this.httpGet("/missions",a)}async get(t){return this.httpGet("/missions/"+t)}async create(t){return this.httpPost("/missions",t)}async update(t,e){return this.httpPut("/missions/"+t,e)}async remove(t){await this.httpDelete("/missions/"+t)}async generate(t){return this.httpPost("/missions/"+t+"/generate")}async execute(t){return this.httpPost("/missions/"+t+"/execute")}async retry(t){return this.httpPost("/missions/"+t+"/retry")}async replan(t){return this.httpPost("/missions/"+t+"/replan")}async sendInstruction(t,e){return this.httpPost("/missions/"+t+"/instructions",{instruction:e})}async stop(t){return this.httpPost("/missions/"+t+"/stop")}async resume(t){return this.httpPost("/missions/"+t+"/continue")}}class T{constructor(t,e){c(this,"baseUrl");c(this,"authProvider");this.baseUrl=(t||"https://persona.applica.guru/billing").replace(/\/$/,""),this.authProvider=e??null}buildHeaders(){const t=new Headers;return t.set("Content-Type","application/json"),this.authProvider&&(typeof this.authProvider=="string"?t.set("x-persona-apikey",this.authProvider):this.authProvider.applyHeaders(t)),t}async request(t,e,s){const r=await fetch(this.baseUrl+t,{method:e,headers:this.buildHeaders(),body:s?JSON.stringify(s):void 0});if(!r.ok){const n=await r.text();throw new p(r.status,n)}const i=await r.text();return i?JSON.parse(i):void 0}async createCustomer(t){return this.request("/customers","POST",t)}async updateCustomer(t,e){return this.request("/customers/"+t,"PUT",e)}async getCustomer(t){return this.request("/customers/"+t,"GET")}async saveCustomer(t){return this.request("/customers","POST",t)}async deleteCustomer(t){await this.request("/customers/"+t,"DELETE")}async createSubscription(t){return this.request("/customers/"+t.owner+"/subscription","POST",t)}async getSubscription(t){return this.request("/customers/"+t+"/subscription","GET")}async getProjectSubscription(t){return this.request("/projects/"+t+"/subscription","GET")}async changeProjectSubscriptionPlan(t,e){return this.request("/projects/"+t+"/subscription/actions/change-plan","POST",e)}async addProjectSubscriptionCredits(t,e){return this.request("/projects/"+t+"/subscription/actions/add-credits","POST",e)}async beginUpgrade(t,e){return this.request("/customers/"+t+"/subscription/actions/upgrade","POST",e)}async downgrade(t,e){return this.request("/customers/"+t+"/subscription/actions/downgrade","POST",e)}async mentorize(t,e){return this.request("/customers/"+t+"/subscription/actions/mentorize","POST",e)}async addCredits(t,e){return this.request("/customers/"+t+"/subscription/credits","POST",{credits:e})}async useCredits(t,e,s,r){const i={credits:e,services:s};return r&&(i.referenceId=r),this.request("/customers/"+t+"/subscription/credits","DELETE",i)}async getCredits(t){try{return(await this.request("/customers/"+t+"/subscription/credits","GET")).credits??0}catch{return 0}}async isValid(t){try{return(await this.request("/customers/"+t+"/subscription/valid","GET")).valid??!1}catch{return!1}}async listInvoices(t,e,s){const r=[];e&&r.push("date_from="+e),s&&r.push("date_to="+s);const i=r.length>0?"?"+r.join("&"):"";return this.request("/customers/"+t+"/invoices"+i,"GET")}async cancelSubscription(t){return this.request("/customers/"+t+"/subscription/actions/cancel","POST",{})}}class U extends u{constructor(t,e){super(t,e)}async get(t){return this.httpGet("/values/"+t)}async getLanguageCodes(){return this.httpGet("/values/language-codes")}async getModelNames(){return this.httpGet("/values/model-names")}async getModelProviders(){return this.httpGet("/values/model-providers")}async getKnowledgeTypes(){return this.httpGet("/values/knowledge-types")}async getCollaborationModes(){return this.httpGet("/values/collaboration-modes")}async getTranscriberNames(){return this.httpGet("/values/transcriber-names")}async getSynthesizerNames(){return this.httpGet("/values/synthesizer-names")}async getSynthesizerVoices(t){return this.httpGet("/values/synthesizers/"+t+"/voices")}async getStmTypes(){return this.httpGet("/values/stm-types")}async getDocumentExtractors(){return this.httpGet("/values/document-extractors")}async getEmbeddingModels(){return this.httpGet("/values/embedding-models")}async getQualityOptions(){return this.httpGet("/values/quality")}async getChunkSizeOptions(){return this.httpGet("/values/chunk-size")}async getFeatureTypes(){return this.httpGet("/values/feature-types")}async getRoles(){return this.httpGet("/values/roles")}async getServiceUnits(){return this.httpGet("/values/service-units")}async getTriggerSourceTypes(){return this.httpGet("/values/trigger-source-types")}async getTriggerDestinationTypes(){return this.httpGet("/values/trigger-destination-types")}}class j{constructor(t,e,s){c(this,"baseUrl");c(this,"workflowsBaseUrl");c(this,"billingBaseUrl");this.baseUrl=t,this.workflowsBaseUrl=e,this.billingBaseUrl=s||"https://persona.applica.guru/billing"}projects(t){return new d(this.baseUrl,t,this.billingBaseUrl)}agents(t){return new y(this.baseUrl,t)}knowledgeBases(t){return new P(this.baseUrl,t)}workflows(t){return new b(this.workflowsBaseUrl,t)}credentials(t){return new v(this.baseUrl,t)}features(t){return new G(this.baseUrl,t)}triggers(t){return new z(this.baseUrl,t)}servicePrices(t){return new A(this.baseUrl,t)}sessions(t){return new x(this.baseUrl,t)}missions(t){return new S(this.baseUrl,t)}billing(t){return new T(this.billingBaseUrl,t)}values(t){return new U(this.baseUrl,t)}}class C{constructor(t){this.token=t}applyHeaders(t){t.set("Authorization",`Bearer ${this.token}`)}getCredentials(){return this.token}}exports.AgentsApi=y;exports.ApiException=p;exports.ApiKeyAuthenticationProvider=g;exports.BearerTokenAuthenticationProvider=C;exports.BillingClient=T;exports.CredentialsApi=v;exports.FeatureTemplatesApi=f;exports.FeaturesApi=G;exports.KnowledgeBaseDocumentsApi=m;exports.KnowledgeBasesApi=P;exports.MissionsApi=S;exports.PersonaSdk=j;exports.ProjectsApi=d;exports.ServicePricesApi=A;exports.SessionsApi=x;exports.TriggerExecutionsApi=k;exports.TriggersApi=z;exports.ValuesApi=U;exports.WorkflowExecutionsApi=w;exports.WorkflowsApi=b;
2
2
  //# sourceMappingURL=bundle.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bundle.cjs.js","sources":["../src/exceptions.ts","../src/auth/api-key-auth.ts","../src/http-api.ts","../src/projects/projects-api.ts","../src/agents/agents-api.ts","../src/knowledges/knowledge-base-documents-api.ts","../src/knowledges/knowledge-bases-api.ts","../src/workflows/workflow-executions-api.ts","../src/workflows/workflows-api.ts","../src/credentials/credentials-api.ts","../src/features/feature-templates-api.ts","../src/features/features-api.ts","../src/triggers/trigger-executions-api.ts","../src/triggers/triggers-api.ts","../src/service-prices/service-prices-api.ts","../src/sessions/sessions-api.ts","../src/missions/missions-api.ts","../src/billing/billing-client.ts","../src/values/values-api.ts","../src/persona-sdk.ts","../src/auth/bearer-token-auth.ts"],"sourcesContent":["export class ApiException extends Error {\n public readonly statusCode: number;\n public readonly body: string;\n\n constructor(statusCode: number, body: string) {\n super(`API Error: ${statusCode} - ${body}`);\n this.statusCode = statusCode;\n this.body = body;\n }\n}\n","import { AuthenticationProvider } from './authentication-provider';\n\nexport class ApiKeyAuthenticationProvider implements AuthenticationProvider {\n constructor(private readonly apiKey: string) {}\n\n applyHeaders(headers: Headers): void {\n headers.set('x-persona-apikey', this.apiKey);\n }\n\n getCredentials(): string {\n return this.apiKey;\n }\n}\n","import { ApiException } from './exceptions';\nimport { AuthenticationProvider } from './auth/authentication-provider';\nimport { ApiKeyAuthenticationProvider } from './auth/api-key-auth';\n\nexport abstract class HttpApi {\n private readonly baseUrl: string;\n private readonly authProvider: AuthenticationProvider;\n\n constructor(baseUrl: string, apiKey: string | AuthenticationProvider) {\n this.baseUrl = baseUrl;\n this.authProvider = typeof apiKey === 'string' ? new ApiKeyAuthenticationProvider(apiKey) : apiKey;\n }\n\n protected getBaseUrl(): string {\n return this.baseUrl;\n }\n\n protected getAuthProvider(): AuthenticationProvider {\n return this.authProvider;\n }\n\n protected normalizePageParams(page?: number, size?: number): { page: number; size: number } {\n return {\n page: page === undefined || page < 1 ? 1 : page,\n size: size === undefined || size < 1 ? 20 : size,\n };\n }\n\n private buildHeaders(): Headers {\n const headers = new Headers();\n headers.set('Content-Type', 'application/json');\n this.authProvider.applyHeaders(headers);\n return headers;\n }\n\n private buildUrl(path: string, params?: Record<string, unknown>): string {\n const url = new URL(this.baseUrl + path);\n if (params) {\n Object.entries(params).forEach(([key, value]) => {\n if (value !== null && value !== undefined) {\n url.searchParams.set(key, String(value));\n }\n });\n }\n return url.toString();\n }\n\n private async handleResponse<T>(response: Response): Promise<T> {\n if (!response.ok) {\n const body = await response.text();\n throw new ApiException(response.status, body);\n }\n const text = await response.text();\n return text ? JSON.parse(text) : (undefined as T);\n }\n\n protected async httpGet<T>(path: string, params?: Record<string, unknown>): Promise<T> {\n const response = await fetch(this.buildUrl(path, params), {\n method: 'GET',\n headers: this.buildHeaders(),\n });\n return this.handleResponse<T>(response);\n }\n\n protected async httpPost<T>(path: string, body?: unknown, params?: Record<string, unknown>): Promise<T> {\n const response = await fetch(this.buildUrl(path, params), {\n method: 'POST',\n headers: this.buildHeaders(),\n body: body ? JSON.stringify(body) : undefined,\n });\n return this.handleResponse<T>(response);\n }\n\n protected async httpPut<T>(path: string, body: unknown): Promise<T> {\n const response = await fetch(this.baseUrl + path, {\n method: 'PUT',\n headers: this.buildHeaders(),\n body: JSON.stringify(body),\n });\n return this.handleResponse<T>(response);\n }\n\n protected async httpPatch<T>(path: string, body: unknown): Promise<T> {\n const response = await fetch(this.baseUrl + path, {\n method: 'PATCH',\n headers: this.buildHeaders(),\n body: JSON.stringify(body),\n });\n return this.handleResponse<T>(response);\n }\n\n protected async httpDelete(path: string): Promise<void> {\n const response = await fetch(this.baseUrl + path, {\n method: 'DELETE',\n headers: this.buildHeaders(),\n });\n if (!response.ok) {\n const body = await response.text();\n throw new ApiException(response.status, body);\n }\n }\n}\n","import { HttpApi } from '../http-api';\nimport { ApiException } from '../exceptions';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n Project,\n ProjectCreateRequest,\n ProjectUpdateRequest,\n ProjectSubscription,\n ChangeProjectSubscriptionPlanRequest,\n AddProjectSubscriptionCreditsRequest,\n SetProjectSubscriptionInfiniteCreditsRequest,\n} from './types';\n\nexport class ProjectsApi extends HttpApi {\n private readonly billingBaseUrl: string;\n\n constructor(baseUrl: string, auth: string | AuthenticationProvider, billingBaseUrl?: string) {\n super(baseUrl, auth);\n this.billingBaseUrl = (billingBaseUrl || baseUrl).replace(/\\/$/, '');\n }\n\n async list(keyword: string | null, page: number, size: number): Promise<Paginated<Project>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<Project>>('/projects', params);\n }\n\n async get(projectId: string): Promise<Project> {\n return this.httpGet<Project>('/projects/' + projectId);\n }\n\n async getMine(): Promise<Project> {\n return this.httpGet<Project>('/projects/mine');\n }\n\n async create(request: ProjectCreateRequest): Promise<Project> {\n return this.httpPost<Project>('/projects', request);\n }\n\n async update(request: ProjectUpdateRequest): Promise<Project> {\n return this.httpPut<Project>('/projects/' + request.projectId, request);\n }\n\n async remove(projectId: string): Promise<void> {\n await this.httpDelete('/projects/' + projectId);\n }\n\n async getSubscription(projectId: string): Promise<ProjectSubscription> {\n return this.billingRequest<ProjectSubscription>('/projects/' + projectId + '/subscription', 'GET');\n }\n\n async changeSubscriptionPlan(projectId: string, request: ChangeProjectSubscriptionPlanRequest): Promise<ProjectSubscription> {\n return this.billingRequest<ProjectSubscription>('/projects/' + projectId + '/subscription/actions/change-plan', 'POST', request);\n }\n\n async addSubscriptionCredits(projectId: string, request: AddProjectSubscriptionCreditsRequest): Promise<ProjectSubscription> {\n return this.billingRequest<ProjectSubscription>('/projects/' + projectId + '/subscription/actions/add-credits', 'POST', request);\n }\n\n async setInfiniteCredits(projectId: string, request: SetProjectSubscriptionInfiniteCreditsRequest): Promise<ProjectSubscription> {\n return this.billingRequest<ProjectSubscription>('/projects/' + projectId + '/subscription/actions/set-infinite-credits', 'POST', request);\n }\n\n private async billingRequest<T>(path: string, method: string, body?: unknown): Promise<T> {\n const headers = new Headers();\n headers.set('Content-Type', 'application/json');\n this.getAuthProvider().applyHeaders(headers);\n\n const response = await fetch(this.billingBaseUrl + path, {\n method,\n headers,\n body: body ? JSON.stringify(body) : undefined,\n });\n\n if (!response.ok) {\n const text = await response.text();\n throw new ApiException(response.status, text);\n }\n\n const text = await response.text();\n return text ? JSON.parse(text) : (undefined as T);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n Agent,\n AgentCreateRequest,\n AgentUpdateRequest,\n SynthesizerVoice,\n Revision,\n} from './types';\n\nexport class AgentsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<Agent>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<Agent>>('/agents', params);\n }\n\n async get(agentId: string): Promise<Agent> {\n return this.httpGet<Agent>('/agents/' + agentId);\n }\n\n async create(request: AgentCreateRequest): Promise<Agent> {\n return this.httpPost<Agent>('/agents', request);\n }\n\n async update(request: AgentUpdateRequest): Promise<Agent> {\n return this.httpPut<Agent>('/agents/' + request.id, request);\n }\n\n async remove(agentId: string): Promise<void> {\n await this.httpDelete('/agents/' + agentId);\n }\n\n async getSynthesizerSupportedVoices(synthesizerName: string): Promise<SynthesizerVoice[]> {\n return this.httpGet<SynthesizerVoice[]>('/values/synthesizers/' + synthesizerName + '/voices');\n }\n\n async listRevisions(agentId: string): Promise<Revision[]> {\n return this.httpGet<Revision[]>('/agents/' + agentId + '/revisions');\n }\n\n async getRevision(agentId: string, revisionId: string): Promise<Revision> {\n return this.httpGet<Revision>('/agents/' + agentId + '/revisions/' + revisionId);\n }\n\n async rollback(agentId: string, revisionId: string): Promise<Agent> {\n return this.httpPost<Agent>('/agents/' + agentId + '/revisions/' + revisionId + '/rollback', {});\n }\n\n async generateSystemInstructions(prompt: string, sessionId?: string): Promise<string> {\n const body: Record<string, unknown> = { prompt };\n if (sessionId) body.sessionId = sessionId;\n const result = await this.httpPost<{ instructions: string }>('/agents/system-instructions', body);\n return result.instructions;\n }\n\n async getArchitect(): Promise<Agent> {\n return this.httpGet<Agent>('/agents/architect');\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n KnowledgeBaseDocument,\n KnowledgeBaseDocumentUploadRequest,\n} from './types';\n\nexport class KnowledgeBaseDocumentsApi extends HttpApi {\n private readonly knowledgeBaseId: string;\n\n constructor(baseUrl: string, auth: string | AuthenticationProvider, knowledgeBaseId: string) {\n super(baseUrl, auth);\n this.knowledgeBaseId = knowledgeBaseId;\n }\n\n async list(keyword?: string | null, page?: number, size?: number): Promise<Paginated<KnowledgeBaseDocument>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<KnowledgeBaseDocument>>('/knowledge-bases/' + this.knowledgeBaseId + '/documents', params);\n }\n\n async upload(request: KnowledgeBaseDocumentUploadRequest): Promise<KnowledgeBaseDocument> {\n return this.httpPost<KnowledgeBaseDocument>('/knowledge-bases/' + this.knowledgeBaseId + '/documents', request);\n }\n\n async get(documentId: string): Promise<KnowledgeBaseDocument> {\n return this.httpGet<KnowledgeBaseDocument>('/knowledge-bases/' + this.knowledgeBaseId + '/documents/' + documentId);\n }\n\n async reprocess(documentId: string): Promise<KnowledgeBaseDocument> {\n return this.httpPost<KnowledgeBaseDocument>('/knowledge-bases/' + this.knowledgeBaseId + '/documents', { document_id: documentId });\n }\n\n async remove(documentId: string): Promise<void> {\n await this.httpDelete('/knowledge-bases/' + this.knowledgeBaseId + '/documents/' + documentId);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n KnowledgeBase,\n KnowledgeBaseCreateRequest,\n KnowledgeBaseUpdateRequest,\n ChunkResult,\n SearchChunksRequest,\n} from './types';\nimport { KnowledgeBaseDocumentsApi } from './knowledge-base-documents-api';\n\nexport class KnowledgeBasesApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<KnowledgeBase>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<KnowledgeBase>>('/knowledge-bases', params);\n }\n\n async get(id: string): Promise<KnowledgeBase> {\n return this.httpGet<KnowledgeBase>('/knowledge-bases/' + id);\n }\n\n async create(request: KnowledgeBaseCreateRequest): Promise<KnowledgeBase> {\n return this.httpPost<KnowledgeBase>('/knowledge-bases', request);\n }\n\n async update(request: KnowledgeBaseUpdateRequest): Promise<KnowledgeBase> {\n return this.httpPut<KnowledgeBase>('/knowledge-bases/' + request.id, request);\n }\n\n async remove(id: string): Promise<void> {\n await this.httpDelete('/knowledge-bases/' + id);\n }\n\n documents(knowledgeBaseId: string): KnowledgeBaseDocumentsApi {\n return new KnowledgeBaseDocumentsApi(this.getBaseUrl(), this.getAuthProvider(), knowledgeBaseId);\n }\n\n async searchChunks(id: string, request: SearchChunksRequest): Promise<ChunkResult[]> {\n return this.httpPost<ChunkResult[]>('/knowledge-bases/' + id + '/search', request);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { Execution, ExecuteRequest } from './types';\n\nexport class WorkflowExecutionsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(workflowId: string, page?: number, size?: number): Promise<Paginated<Execution>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n return this.httpGet<Paginated<Execution>>('/workflows/' + workflowId + '/executions', params);\n }\n\n async get(workflowId: string, executionId: string): Promise<Execution> {\n return this.httpGet<Execution>('/workflows/' + workflowId + '/executions/' + executionId);\n }\n\n async run(workflowId: string, request: ExecuteRequest): Promise<Execution> {\n return this.httpPost<Execution>('/workflows/' + workflowId + '/executions', request);\n }\n\n async queue(workflowId: string, request: ExecuteRequest): Promise<Execution> {\n return this.httpPost<Execution>('/workflows/' + workflowId + '/executions/queue', request);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { Revision } from '../revisions/types';\nimport { Workflow } from './types';\nimport { WorkflowExecutionsApi } from './workflow-executions-api';\n\nexport class WorkflowsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<Workflow>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<Workflow>>('/workflows', params);\n }\n\n async create(workflow: Workflow): Promise<Workflow> {\n return this.httpPost<Workflow>('/workflows', workflow);\n }\n\n async update(workflowId: string, workflow: Workflow): Promise<Workflow> {\n workflow.id = workflowId;\n return this.httpPut<Workflow>('/workflows/' + workflowId, workflow);\n }\n\n async remove(workflowId: string): Promise<void> {\n await this.httpDelete('/workflows/' + workflowId);\n }\n\n async get(workflowId: string): Promise<Workflow> {\n return this.httpGet<Workflow>('/workflows/' + workflowId);\n }\n\n executions(): WorkflowExecutionsApi {\n return new WorkflowExecutionsApi(this.getBaseUrl(), this.getAuthProvider());\n }\n\n async listRevisions(workflowId: string): Promise<Revision[]> {\n return this.httpGet<Revision[]>('/workflows/' + workflowId + '/revisions');\n }\n\n async getRevision(workflowId: string, revisionId: string): Promise<Revision> {\n return this.httpGet<Revision>('/workflows/' + workflowId + '/revisions/' + revisionId);\n }\n\n async rollback(workflowId: string, revisionId: string): Promise<Workflow> {\n return this.httpPost<Workflow>('/workflows/' + workflowId + '/revisions/' + revisionId + '/rollback', {});\n }\n}\n","import { HttpApi } from '../http-api';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n Credentials,\n AuthorizeRequest,\n AuthorizeResponse,\n OAuth2CallbackResponse,\n} from './types';\n\nexport class CredentialsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async authorize(provider: string, request: AuthorizeRequest): Promise<AuthorizeResponse> {\n return this.httpPost<AuthorizeResponse>('/credentials/' + provider + '/authorize', request);\n }\n\n async handleOAuth2Callback(provider: string, code: string, state: string, scope?: string): Promise<OAuth2CallbackResponse> {\n const params: Record<string, unknown> = { code, state };\n if (scope) params.scope = scope;\n return this.httpGet<OAuth2CallbackResponse>('/credentials/' + provider + '/oauth2/callback', params);\n }\n\n async list(): Promise<Credentials[]> {\n return this.httpGet<Credentials[]>('/credentials');\n }\n\n async getByProvider(provider: string): Promise<Credentials[]> {\n return this.httpGet<Credentials[]>('/credentials/' + provider);\n }\n\n async getById(credentialsId: string): Promise<Credentials> {\n return this.httpGet<Credentials>('/credentials/all/' + credentialsId);\n }\n\n async remove(credentialsId: string): Promise<void> {\n await this.httpDelete('/credentials/all/' + credentialsId);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { FeatureTemplate, McpToolsResponse } from './types';\nimport { McpServerConfiguration } from '../agents/types';\n\nexport class FeatureTemplatesApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<FeatureTemplate>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<FeatureTemplate>>('/features/templates', params);\n }\n\n async get(templateId: string): Promise<FeatureTemplate> {\n return this.httpGet<FeatureTemplate>('/features/templates/' + templateId);\n }\n\n async create(template: FeatureTemplate): Promise<FeatureTemplate> {\n return this.httpPost<FeatureTemplate>('/features/templates', template);\n }\n\n async update(templateId: string, template: FeatureTemplate): Promise<FeatureTemplate> {\n return this.httpPut<FeatureTemplate>('/features/templates/' + templateId, template);\n }\n\n async patch(templateId: string, template: FeatureTemplate): Promise<FeatureTemplate> {\n return this.httpPatch<FeatureTemplate>('/features/templates/' + templateId, template);\n }\n\n async remove(templateId: string): Promise<void> {\n await this.httpDelete('/features/templates/' + templateId);\n }\n\n async getMcpAvailableTools(configuration: McpServerConfiguration, credentialsId?: string): Promise<McpToolsResponse> {\n const params = credentialsId ? { credentialsId } : undefined;\n return this.httpPost<McpToolsResponse>('/features/templates/mcp/available-tools', configuration, params);\n }\n}\n","import { AuthenticationProvider } from '../auth/authentication-provider';\nimport { FeatureTemplatesApi } from './feature-templates-api';\n\nexport class FeaturesApi {\n private readonly baseUrl: string;\n private readonly auth: string | AuthenticationProvider;\n\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n this.baseUrl = baseUrl;\n this.auth = auth;\n }\n\n templates(): FeatureTemplatesApi {\n return new FeatureTemplatesApi(this.baseUrl, this.auth);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { TriggerExecutionResult } from './types';\n\nexport class TriggerExecutionsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(triggerId: string, page?: number, size?: number): Promise<Paginated<TriggerExecutionResult>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n return this.httpGet<Paginated<TriggerExecutionResult>>('/triggers/' + triggerId + '/executions', params);\n }\n\n async execute(triggerId: string, execution: TriggerExecutionResult): Promise<TriggerExecutionResult> {\n return this.httpPost<TriggerExecutionResult>('/triggers/' + triggerId + '/executions', execution);\n }\n\n async get(executionId: string): Promise<TriggerExecutionResult> {\n return this.httpGet<TriggerExecutionResult>('/triggers/executions/' + executionId);\n }\n\n async remove(executionId: string): Promise<void> {\n await this.httpDelete('/triggers/executions/' + executionId);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { Trigger } from './types';\nimport { TriggerExecutionsApi } from './trigger-executions-api';\n\nexport class TriggersApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<Trigger>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<Trigger>>('/triggers', params);\n }\n\n async create(trigger: Trigger): Promise<Trigger> {\n return this.httpPost<Trigger>('/triggers', trigger);\n }\n\n async update(triggerId: string, trigger: Trigger): Promise<Trigger> {\n return this.httpPut<Trigger>('/triggers/' + triggerId, trigger);\n }\n\n async remove(triggerId: string): Promise<void> {\n await this.httpDelete('/triggers/' + triggerId);\n }\n\n async get(triggerId: string): Promise<Trigger> {\n return this.httpGet<Trigger>('/triggers/' + triggerId);\n }\n\n executions(): TriggerExecutionsApi {\n return new TriggerExecutionsApi(this.getBaseUrl(), this.getAuthProvider());\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { ServicePrice } from './types';\n\nexport class ServicePricesApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<ServicePrice>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<ServicePrice>>('/service-prices', params);\n }\n\n async get(id: string): Promise<ServicePrice> {\n return this.httpGet<ServicePrice>('/service-prices/' + id);\n }\n\n async create(servicePrice: ServicePrice): Promise<ServicePrice> {\n return this.httpPost<ServicePrice>('/service-prices', servicePrice);\n }\n\n async update(id: string, servicePrice: ServicePrice): Promise<ServicePrice> {\n return this.httpPut<ServicePrice>('/service-prices/' + id, servicePrice);\n }\n\n async remove(id: string): Promise<void> {\n await this.httpDelete('/service-prices/' + id);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n Session,\n GenerationRequest,\n GenerationResponse,\n Message,\n CommittedUsage,\n} from './types';\n\nexport class SessionsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(\n keyword?: string | null,\n status?: string | null,\n agentId?: string | null,\n userId?: string | null,\n page?: number,\n size?: number,\n ): Promise<Paginated<Session>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n if (keyword) params.keyword = keyword;\n if (status) params.status = status;\n if (agentId) params.agentId = agentId;\n if (userId) params.userId = userId;\n return this.httpGet<Paginated<Session>>('/sessions', params);\n }\n\n async get(sessionId: string): Promise<Session> {\n return this.httpGet<Session>('/sessions/' + sessionId);\n }\n\n async getUsage(sessionId: string): Promise<CommittedUsage[]> {\n return this.httpGet<CommittedUsage[]>('/sessions/' + sessionId + '/usage');\n }\n\n async generateMessage(code: string, request: GenerationRequest): Promise<GenerationResponse> {\n return this.httpPost<GenerationResponse>('/sessions/' + code + '/messages', request);\n }\n\n async findMessages(code: string, page?: number, size?: number): Promise<Paginated<Message>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n return this.httpGet<Paginated<Message>>('/sessions/' + code + '/messages', params);\n }\n\n async remove(code: string): Promise<void> {\n await this.httpDelete('/sessions/' + code);\n }\n\n async rename(sessionId: string, name: string): Promise<Session> {\n return this.httpPut<Session>('/sessions/' + sessionId + '/name', { name });\n }\n}\n","import { HttpApi } from '../http-api';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { Paginated } from '../paginated';\nimport { Mission } from './types';\n\nexport class MissionsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, status?: string | null): Promise<Paginated<Mission>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n if (keyword) params.keyword = keyword;\n if (status) params.status = status;\n return this.httpGet<Paginated<Mission>>('/missions', params);\n }\n\n async get(missionId: string): Promise<Mission> {\n return this.httpGet<Mission>('/missions/' + missionId);\n }\n\n async create(mission: Mission): Promise<Mission> {\n return this.httpPost<Mission>('/missions', mission);\n }\n\n async update(missionId: string, mission: Mission): Promise<Mission> {\n return this.httpPut<Mission>('/missions/' + missionId, mission);\n }\n\n async remove(missionId: string): Promise<void> {\n await this.httpDelete('/missions/' + missionId);\n }\n\n async generate(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/generate');\n }\n\n async execute(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/execute');\n }\n\n async retry(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/retry');\n }\n\n async replan(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/replan');\n }\n\n async sendInstruction(missionId: string, instruction: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/instructions', { instruction });\n }\n\n async stop(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/stop');\n }\n\n async resume(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/continue');\n }\n}\n","import { AuthenticationProvider } from '../auth/authentication-provider';\nimport { ApiException } from '../exceptions';\nimport {\n Customer,\n Subscription,\n Invoice,\n CreateCustomerRequest,\n UpdateCustomerRequest,\n CreateSubscriptionRequest,\n UpgradeSubscriptionRequest,\n DowngradeSubscriptionRequest,\n MentorizeSubscriptionRequest,\n} from './types';\n\nexport class BillingClient {\n private readonly baseUrl: string;\n private readonly authProvider: AuthenticationProvider | string | null;\n\n constructor(baseUrl?: string, auth?: string | AuthenticationProvider | null) {\n this.baseUrl = (baseUrl || 'https://persona.applica.guru/billing').replace(/\\/$/, '');\n this.authProvider = auth ?? null;\n }\n\n private buildHeaders(): Headers {\n const headers = new Headers();\n headers.set('Content-Type', 'application/json');\n if (this.authProvider) {\n if (typeof this.authProvider === 'string') {\n headers.set('x-persona-apikey', this.authProvider);\n } else {\n this.authProvider.applyHeaders(headers);\n }\n }\n return headers;\n }\n\n private async request<T>(path: string, method: string, body?: unknown): Promise<T> {\n const response = await fetch(this.baseUrl + path, {\n method,\n headers: this.buildHeaders(),\n body: body ? JSON.stringify(body) : undefined,\n });\n if (!response.ok) {\n const text = await response.text();\n throw new ApiException(response.status, text);\n }\n const text = await response.text();\n return text ? JSON.parse(text) : (undefined as T);\n }\n\n async createCustomer(request: CreateCustomerRequest): Promise<Customer> {\n return this.request<Customer>('/customers', 'POST', request);\n }\n\n async updateCustomer(owner: string, request: UpdateCustomerRequest): Promise<Customer> {\n return this.request<Customer>('/customers/' + owner, 'PUT', request);\n }\n\n async getCustomer(owner: string): Promise<Customer> {\n return this.request<Customer>('/customers/' + owner, 'GET');\n }\n\n async saveCustomer(customer: Customer): Promise<Customer> {\n return this.request<Customer>('/customers', 'POST', customer);\n }\n\n async deleteCustomer(owner: string): Promise<void> {\n await this.request<void>('/customers/' + owner, 'DELETE');\n }\n\n async createSubscription(request: CreateSubscriptionRequest): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + request.owner + '/subscription', 'POST', request);\n }\n\n async getSubscription(owner: string): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription', 'GET');\n }\n\n async getProjectSubscription(projectId: string): Promise<Subscription> {\n return this.request<Subscription>('/projects/' + projectId + '/subscription', 'GET');\n }\n\n async changeProjectSubscriptionPlan(projectId: string, request: { toPlanType: string }): Promise<Subscription> {\n return this.request<Subscription>('/projects/' + projectId + '/subscription/actions/change-plan', 'POST', request);\n }\n\n async addProjectSubscriptionCredits(projectId: string, request: { credits: number }): Promise<Subscription> {\n return this.request<Subscription>('/projects/' + projectId + '/subscription/actions/add-credits', 'POST', request);\n }\n\n async beginUpgrade(owner: string, request: UpgradeSubscriptionRequest): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription/actions/upgrade', 'POST', request);\n }\n\n async downgrade(owner: string, request: DowngradeSubscriptionRequest): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription/actions/downgrade', 'POST', request);\n }\n\n async mentorize(owner: string, request: MentorizeSubscriptionRequest): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription/actions/mentorize', 'POST', request);\n }\n\n async addCredits(owner: string, credits: number): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription/credits', 'POST', { credits });\n }\n\n async useCredits(owner: string, credits: number, services: string[], referenceId?: string): Promise<Subscription> {\n const body: Record<string, unknown> = { credits, services };\n if (referenceId) body.referenceId = referenceId;\n return this.request<Subscription>('/customers/' + owner + '/subscription/credits', 'DELETE', body);\n }\n\n async getCredits(owner: string): Promise<number> {\n try {\n const result = await this.request<{ credits?: number }>('/customers/' + owner + '/subscription/credits', 'GET');\n return result.credits ?? 0;\n } catch {\n return 0;\n }\n }\n\n async isValid(owner: string): Promise<boolean> {\n try {\n const result = await this.request<{ valid?: boolean }>('/customers/' + owner + '/subscription/valid', 'GET');\n return result.valid ?? false;\n } catch {\n return false;\n }\n }\n\n async listInvoices(owner: string, dateFrom?: string, dateTo?: string): Promise<Invoice[]> {\n const params: string[] = [];\n if (dateFrom) params.push('date_from=' + dateFrom);\n if (dateTo) params.push('date_to=' + dateTo);\n const query = params.length > 0 ? '?' + params.join('&') : '';\n return this.request<Invoice[]>('/customers/' + owner + '/invoices' + query, 'GET');\n }\n\n async cancelSubscription(owner: string): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription/actions/cancel', 'POST', {});\n }\n}\n","import { HttpApi } from '../http-api';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\n\nexport class ValuesApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async get(category: string): Promise<Record<string, unknown>[]> {\n return this.httpGet<Record<string, unknown>[]>('/values/' + category);\n }\n\n async getLanguageCodes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/language-codes');\n }\n\n async getModelNames(): Promise<string[]> {\n return this.httpGet<string[]>('/values/model-names');\n }\n\n async getModelProviders(): Promise<string[]> {\n return this.httpGet<string[]>('/values/model-providers');\n }\n\n async getKnowledgeTypes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/knowledge-types');\n }\n\n async getCollaborationModes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/collaboration-modes');\n }\n\n async getTranscriberNames(): Promise<string[]> {\n return this.httpGet<string[]>('/values/transcriber-names');\n }\n\n async getSynthesizerNames(): Promise<string[]> {\n return this.httpGet<string[]>('/values/synthesizer-names');\n }\n\n async getSynthesizerVoices(synthesizerName: string): Promise<string[]> {\n return this.httpGet<string[]>('/values/synthesizers/' + synthesizerName + '/voices');\n }\n\n async getStmTypes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/stm-types');\n }\n\n async getDocumentExtractors(): Promise<string[]> {\n return this.httpGet<string[]>('/values/document-extractors');\n }\n\n async getEmbeddingModels(): Promise<string[]> {\n return this.httpGet<string[]>('/values/embedding-models');\n }\n\n async getQualityOptions(): Promise<string[]> {\n return this.httpGet<string[]>('/values/quality');\n }\n\n async getChunkSizeOptions(): Promise<string[]> {\n return this.httpGet<string[]>('/values/chunk-size');\n }\n\n async getFeatureTypes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/feature-types');\n }\n\n async getRoles(): Promise<string[]> {\n return this.httpGet<string[]>('/values/roles');\n }\n\n async getServiceUnits(): Promise<string[]> {\n return this.httpGet<string[]>('/values/service-units');\n }\n\n async getTriggerSourceTypes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/trigger-source-types');\n }\n\n async getTriggerDestinationTypes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/trigger-destination-types');\n }\n}\n","import { AuthenticationProvider } from './auth/authentication-provider';\nimport { ProjectsApi } from './projects/projects-api';\nimport { AgentsApi } from './agents/agents-api';\nimport { KnowledgeBasesApi } from './knowledges/knowledge-bases-api';\nimport { WorkflowsApi } from './workflows/workflows-api';\nimport { CredentialsApi } from './credentials/credentials-api';\nimport { FeaturesApi } from './features/features-api';\nimport { TriggersApi } from './triggers/triggers-api';\nimport { ServicePricesApi } from './service-prices/service-prices-api';\nimport { SessionsApi } from './sessions/sessions-api';\nimport { MissionsApi } from './missions/missions-api';\nimport { BillingClient } from './billing/billing-client';\nimport { ValuesApi } from './values/values-api';\n\nexport class PersonaSdk {\n private readonly baseUrl: string;\n private readonly workflowsBaseUrl: string;\n private readonly billingBaseUrl: string;\n\n constructor(baseUrl: string, workflowsBaseUrl: string, billingBaseUrl?: string) {\n this.baseUrl = baseUrl;\n this.workflowsBaseUrl = workflowsBaseUrl;\n this.billingBaseUrl = billingBaseUrl || 'https://persona.applica.guru/billing';\n }\n\n projects(apiKey: string): ProjectsApi;\n projects(authProvider: AuthenticationProvider): ProjectsApi;\n projects(auth: string | AuthenticationProvider): ProjectsApi {\n return new ProjectsApi(this.baseUrl, auth, this.billingBaseUrl);\n }\n\n agents(apiKey: string): AgentsApi;\n agents(authProvider: AuthenticationProvider): AgentsApi;\n agents(auth: string | AuthenticationProvider): AgentsApi {\n return new AgentsApi(this.baseUrl, auth);\n }\n\n knowledgeBases(apiKey: string): KnowledgeBasesApi;\n knowledgeBases(authProvider: AuthenticationProvider): KnowledgeBasesApi;\n knowledgeBases(auth: string | AuthenticationProvider): KnowledgeBasesApi {\n return new KnowledgeBasesApi(this.baseUrl, auth);\n }\n\n workflows(apiKey: string): WorkflowsApi;\n workflows(authProvider: AuthenticationProvider): WorkflowsApi;\n workflows(auth: string | AuthenticationProvider): WorkflowsApi {\n return new WorkflowsApi(this.workflowsBaseUrl, auth);\n }\n\n credentials(apiKey: string): CredentialsApi;\n credentials(authProvider: AuthenticationProvider): CredentialsApi;\n credentials(auth: string | AuthenticationProvider): CredentialsApi {\n return new CredentialsApi(this.baseUrl, auth);\n }\n\n features(apiKey: string): FeaturesApi;\n features(authProvider: AuthenticationProvider): FeaturesApi;\n features(auth: string | AuthenticationProvider): FeaturesApi {\n return new FeaturesApi(this.baseUrl, auth);\n }\n\n triggers(apiKey: string): TriggersApi;\n triggers(authProvider: AuthenticationProvider): TriggersApi;\n triggers(auth: string | AuthenticationProvider): TriggersApi {\n return new TriggersApi(this.baseUrl, auth);\n }\n\n servicePrices(apiKey: string): ServicePricesApi;\n servicePrices(authProvider: AuthenticationProvider): ServicePricesApi;\n servicePrices(auth: string | AuthenticationProvider): ServicePricesApi {\n return new ServicePricesApi(this.baseUrl, auth);\n }\n\n sessions(apiKey: string): SessionsApi;\n sessions(authProvider: AuthenticationProvider): SessionsApi;\n sessions(auth: string | AuthenticationProvider): SessionsApi {\n return new SessionsApi(this.baseUrl, auth);\n }\n\n missions(apiKey: string): MissionsApi;\n missions(authProvider: AuthenticationProvider): MissionsApi;\n missions(auth: string | AuthenticationProvider): MissionsApi {\n return new MissionsApi(this.baseUrl, auth);\n }\n\n billing(apiKey: string): BillingClient;\n billing(authProvider: AuthenticationProvider): BillingClient;\n billing(auth: string | AuthenticationProvider): BillingClient {\n return new BillingClient(this.billingBaseUrl, auth);\n }\n\n values(apiKey: string): ValuesApi;\n values(authProvider: AuthenticationProvider): ValuesApi;\n values(auth: string | AuthenticationProvider): ValuesApi {\n return new ValuesApi(this.baseUrl, auth);\n }\n}\n","import { AuthenticationProvider } from './authentication-provider';\n\nexport class BearerTokenAuthenticationProvider implements AuthenticationProvider {\n constructor(private readonly token: string) {}\n\n applyHeaders(headers: Headers): void {\n headers.set('Authorization', `Bearer ${this.token}`);\n }\n\n getCredentials(): string {\n return this.token;\n }\n}\n"],"names":["ApiException","statusCode","body","__publicField","ApiKeyAuthenticationProvider","apiKey","headers","HttpApi","baseUrl","page","size","path","params","url","key","value","response","text","ProjectsApi","auth","billingBaseUrl","keyword","p","s","projectId","request","method","AgentsApi","extraParams","agentId","synthesizerName","revisionId","prompt","sessionId","KnowledgeBaseDocumentsApi","knowledgeBaseId","documentId","KnowledgeBasesApi","id","WorkflowExecutionsApi","workflowId","executionId","WorkflowsApi","workflow","CredentialsApi","provider","code","state","scope","credentialsId","FeatureTemplatesApi","templateId","template","configuration","FeaturesApi","TriggerExecutionsApi","triggerId","execution","TriggersApi","trigger","ServicePricesApi","servicePrice","SessionsApi","status","userId","name","MissionsApi","missionId","mission","instruction","BillingClient","owner","customer","credits","services","referenceId","dateFrom","dateTo","query","ValuesApi","category","PersonaSdk","workflowsBaseUrl","BearerTokenAuthenticationProvider","token"],"mappings":"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"}
1
+ {"version":3,"file":"bundle.cjs.js","sources":["../src/exceptions.ts","../src/auth/api-key-auth.ts","../src/http-api.ts","../src/projects/projects-api.ts","../src/agents/agents-api.ts","../src/knowledges/knowledge-base-documents-api.ts","../src/knowledges/knowledge-bases-api.ts","../src/workflows/workflow-executions-api.ts","../src/workflows/workflows-api.ts","../src/credentials/credentials-api.ts","../src/features/feature-templates-api.ts","../src/features/features-api.ts","../src/triggers/trigger-executions-api.ts","../src/triggers/triggers-api.ts","../src/service-prices/service-prices-api.ts","../src/sessions/sessions-api.ts","../src/missions/missions-api.ts","../src/billing/billing-client.ts","../src/values/values-api.ts","../src/persona-sdk.ts","../src/auth/bearer-token-auth.ts"],"sourcesContent":["export class ApiException extends Error {\n public readonly statusCode: number;\n public readonly body: string;\n\n constructor(statusCode: number, body: string) {\n super(`API Error: ${statusCode} - ${body}`);\n this.statusCode = statusCode;\n this.body = body;\n }\n}\n","import { AuthenticationProvider } from './authentication-provider';\n\nexport class ApiKeyAuthenticationProvider implements AuthenticationProvider {\n constructor(private readonly apiKey: string) {}\n\n applyHeaders(headers: Headers): void {\n headers.set('x-persona-apikey', this.apiKey);\n }\n\n getCredentials(): string {\n return this.apiKey;\n }\n}\n","import { ApiException } from './exceptions';\nimport { AuthenticationProvider } from './auth/authentication-provider';\nimport { ApiKeyAuthenticationProvider } from './auth/api-key-auth';\n\nexport abstract class HttpApi {\n private readonly baseUrl: string;\n private readonly authProvider: AuthenticationProvider;\n\n constructor(baseUrl: string, apiKey: string | AuthenticationProvider) {\n this.baseUrl = baseUrl;\n this.authProvider = typeof apiKey === 'string' ? new ApiKeyAuthenticationProvider(apiKey) : apiKey;\n }\n\n protected getBaseUrl(): string {\n return this.baseUrl;\n }\n\n protected getAuthProvider(): AuthenticationProvider {\n return this.authProvider;\n }\n\n protected normalizePageParams(page?: number, size?: number): { page: number; size: number } {\n return {\n page: page === undefined || page < 1 ? 1 : page,\n size: size === undefined || size < 1 ? 20 : size,\n };\n }\n\n private buildHeaders(): Headers {\n const headers = new Headers();\n headers.set('Content-Type', 'application/json');\n this.authProvider.applyHeaders(headers);\n return headers;\n }\n\n private buildUrl(path: string, params?: Record<string, unknown>): string {\n const url = new URL(this.baseUrl + path);\n if (params) {\n Object.entries(params).forEach(([key, value]) => {\n if (value !== null && value !== undefined) {\n url.searchParams.set(key, String(value));\n }\n });\n }\n return url.toString();\n }\n\n private async handleResponse<T>(response: Response): Promise<T> {\n if (!response.ok) {\n const body = await response.text();\n throw new ApiException(response.status, body);\n }\n const text = await response.text();\n return text ? JSON.parse(text) : (undefined as T);\n }\n\n protected async httpGet<T>(path: string, params?: Record<string, unknown>): Promise<T> {\n const response = await fetch(this.buildUrl(path, params), {\n method: 'GET',\n headers: this.buildHeaders(),\n });\n return this.handleResponse<T>(response);\n }\n\n protected async httpPost<T>(path: string, body?: unknown, params?: Record<string, unknown>): Promise<T> {\n const response = await fetch(this.buildUrl(path, params), {\n method: 'POST',\n headers: this.buildHeaders(),\n body: body ? JSON.stringify(body) : undefined,\n });\n return this.handleResponse<T>(response);\n }\n\n protected async httpPut<T>(path: string, body: unknown): Promise<T> {\n const response = await fetch(this.baseUrl + path, {\n method: 'PUT',\n headers: this.buildHeaders(),\n body: JSON.stringify(body),\n });\n return this.handleResponse<T>(response);\n }\n\n protected async httpPatch<T>(path: string, body: unknown): Promise<T> {\n const response = await fetch(this.baseUrl + path, {\n method: 'PATCH',\n headers: this.buildHeaders(),\n body: JSON.stringify(body),\n });\n return this.handleResponse<T>(response);\n }\n\n protected async httpDelete(path: string): Promise<void> {\n const response = await fetch(this.baseUrl + path, {\n method: 'DELETE',\n headers: this.buildHeaders(),\n });\n if (!response.ok) {\n const body = await response.text();\n throw new ApiException(response.status, body);\n }\n }\n}\n","import { HttpApi } from '../http-api';\nimport { ApiException } from '../exceptions';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n Project,\n ProjectCreateRequest,\n ProjectUpdateRequest,\n ProjectDuplicateRequest,\n ProjectSubscription,\n ChangeProjectSubscriptionPlanRequest,\n AddProjectSubscriptionCreditsRequest,\n SetProjectSubscriptionInfiniteCreditsRequest,\n} from './types';\n\nexport class ProjectsApi extends HttpApi {\n private readonly billingBaseUrl: string;\n\n constructor(baseUrl: string, auth: string | AuthenticationProvider, billingBaseUrl?: string) {\n super(baseUrl, auth);\n this.billingBaseUrl = (billingBaseUrl || baseUrl).replace(/\\/$/, '');\n }\n\n async list(keyword: string | null, page: number, size: number): Promise<Paginated<Project>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<Project>>('/projects', params);\n }\n\n async get(projectId: string): Promise<Project> {\n return this.httpGet<Project>('/projects/' + projectId);\n }\n\n async getMine(): Promise<Project> {\n return this.httpGet<Project>('/projects/mine');\n }\n\n async create(request: ProjectCreateRequest): Promise<Project> {\n return this.httpPost<Project>('/projects', request);\n }\n\n async update(request: ProjectUpdateRequest): Promise<Project> {\n return this.httpPut<Project>('/projects/' + request.projectId, request);\n }\n\n async remove(projectId: string): Promise<void> {\n await this.httpDelete('/projects/' + projectId);\n }\n\n async duplicate(projectId: string, request: ProjectDuplicateRequest): Promise<Project> {\n return this.httpPost<Project>('/projects/' + projectId + '/actions/duplicate', request);\n }\n\n async getSubscription(projectId: string): Promise<ProjectSubscription> {\n return this.billingRequest<ProjectSubscription>('/projects/' + projectId + '/subscription', 'GET');\n }\n\n async changeSubscriptionPlan(projectId: string, request: ChangeProjectSubscriptionPlanRequest): Promise<ProjectSubscription> {\n return this.billingRequest<ProjectSubscription>('/projects/' + projectId + '/subscription/actions/change-plan', 'POST', request);\n }\n\n async addSubscriptionCredits(projectId: string, request: AddProjectSubscriptionCreditsRequest): Promise<ProjectSubscription> {\n return this.billingRequest<ProjectSubscription>('/projects/' + projectId + '/subscription/actions/add-credits', 'POST', request);\n }\n\n async setInfiniteCredits(projectId: string, request: SetProjectSubscriptionInfiniteCreditsRequest): Promise<ProjectSubscription> {\n return this.billingRequest<ProjectSubscription>('/projects/' + projectId + '/subscription/actions/set-infinite-credits', 'POST', request);\n }\n\n private async billingRequest<T>(path: string, method: string, body?: unknown): Promise<T> {\n const headers = new Headers();\n headers.set('Content-Type', 'application/json');\n this.getAuthProvider().applyHeaders(headers);\n\n const response = await fetch(this.billingBaseUrl + path, {\n method,\n headers,\n body: body ? JSON.stringify(body) : undefined,\n });\n\n if (!response.ok) {\n const text = await response.text();\n throw new ApiException(response.status, text);\n }\n\n const text = await response.text();\n return text ? JSON.parse(text) : (undefined as T);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n Agent,\n AgentCreateRequest,\n AgentUpdateRequest,\n SynthesizerVoice,\n Revision,\n} from './types';\n\nexport class AgentsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<Agent>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<Agent>>('/agents', params);\n }\n\n async get(agentId: string): Promise<Agent> {\n return this.httpGet<Agent>('/agents/' + agentId);\n }\n\n async create(request: AgentCreateRequest): Promise<Agent> {\n return this.httpPost<Agent>('/agents', request);\n }\n\n async update(request: AgentUpdateRequest): Promise<Agent> {\n return this.httpPut<Agent>('/agents/' + request.id, request);\n }\n\n async remove(agentId: string): Promise<void> {\n await this.httpDelete('/agents/' + agentId);\n }\n\n async getSynthesizerSupportedVoices(synthesizerName: string): Promise<SynthesizerVoice[]> {\n return this.httpGet<SynthesizerVoice[]>('/values/synthesizers/' + synthesizerName + '/voices');\n }\n\n async listRevisions(agentId: string): Promise<Revision[]> {\n return this.httpGet<Revision[]>('/agents/' + agentId + '/revisions');\n }\n\n async getRevision(agentId: string, revisionId: string): Promise<Revision> {\n return this.httpGet<Revision>('/agents/' + agentId + '/revisions/' + revisionId);\n }\n\n async rollback(agentId: string, revisionId: string): Promise<Agent> {\n return this.httpPost<Agent>('/agents/' + agentId + '/revisions/' + revisionId + '/rollback', {});\n }\n\n async generateSystemInstructions(prompt: string, sessionId?: string): Promise<string> {\n const body: Record<string, unknown> = { prompt };\n if (sessionId) body.sessionId = sessionId;\n const result = await this.httpPost<{ instructions: string }>('/agents/system-instructions', body);\n return result.instructions;\n }\n\n async getArchitect(): Promise<Agent> {\n return this.httpGet<Agent>('/agents/architect');\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n KnowledgeBaseDocument,\n KnowledgeBaseDocumentUploadRequest,\n} from './types';\n\nexport class KnowledgeBaseDocumentsApi extends HttpApi {\n private readonly knowledgeBaseId: string;\n\n constructor(baseUrl: string, auth: string | AuthenticationProvider, knowledgeBaseId: string) {\n super(baseUrl, auth);\n this.knowledgeBaseId = knowledgeBaseId;\n }\n\n async list(keyword?: string | null, page?: number, size?: number): Promise<Paginated<KnowledgeBaseDocument>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<KnowledgeBaseDocument>>('/knowledge-bases/' + this.knowledgeBaseId + '/documents', params);\n }\n\n async upload(request: KnowledgeBaseDocumentUploadRequest): Promise<KnowledgeBaseDocument> {\n return this.httpPost<KnowledgeBaseDocument>('/knowledge-bases/' + this.knowledgeBaseId + '/documents', request);\n }\n\n async get(documentId: string): Promise<KnowledgeBaseDocument> {\n return this.httpGet<KnowledgeBaseDocument>('/knowledge-bases/' + this.knowledgeBaseId + '/documents/' + documentId);\n }\n\n async reprocess(documentId: string): Promise<KnowledgeBaseDocument> {\n return this.httpPost<KnowledgeBaseDocument>('/knowledge-bases/' + this.knowledgeBaseId + '/documents', { document_id: documentId });\n }\n\n async remove(documentId: string): Promise<void> {\n await this.httpDelete('/knowledge-bases/' + this.knowledgeBaseId + '/documents/' + documentId);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n KnowledgeBase,\n KnowledgeBaseCreateRequest,\n KnowledgeBaseUpdateRequest,\n ChunkResult,\n SearchChunksRequest,\n} from './types';\nimport { KnowledgeBaseDocumentsApi } from './knowledge-base-documents-api';\n\nexport class KnowledgeBasesApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<KnowledgeBase>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<KnowledgeBase>>('/knowledge-bases', params);\n }\n\n async get(id: string): Promise<KnowledgeBase> {\n return this.httpGet<KnowledgeBase>('/knowledge-bases/' + id);\n }\n\n async create(request: KnowledgeBaseCreateRequest): Promise<KnowledgeBase> {\n return this.httpPost<KnowledgeBase>('/knowledge-bases', request);\n }\n\n async update(request: KnowledgeBaseUpdateRequest): Promise<KnowledgeBase> {\n return this.httpPut<KnowledgeBase>('/knowledge-bases/' + request.id, request);\n }\n\n async remove(id: string): Promise<void> {\n await this.httpDelete('/knowledge-bases/' + id);\n }\n\n documents(knowledgeBaseId: string): KnowledgeBaseDocumentsApi {\n return new KnowledgeBaseDocumentsApi(this.getBaseUrl(), this.getAuthProvider(), knowledgeBaseId);\n }\n\n async searchChunks(id: string, request: SearchChunksRequest): Promise<ChunkResult[]> {\n return this.httpPost<ChunkResult[]>('/knowledge-bases/' + id + '/search', request);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { Execution, ExecuteRequest } from './types';\n\nexport class WorkflowExecutionsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(workflowId: string, page?: number, size?: number): Promise<Paginated<Execution>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n return this.httpGet<Paginated<Execution>>('/workflows/' + workflowId + '/executions', params);\n }\n\n async get(workflowId: string, executionId: string): Promise<Execution> {\n return this.httpGet<Execution>('/workflows/' + workflowId + '/executions/' + executionId);\n }\n\n async run(workflowId: string, request: ExecuteRequest): Promise<Execution> {\n return this.httpPost<Execution>('/workflows/' + workflowId + '/executions', request);\n }\n\n async queue(workflowId: string, request: ExecuteRequest): Promise<Execution> {\n return this.httpPost<Execution>('/workflows/' + workflowId + '/executions/queue', request);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { Revision } from '../revisions/types';\nimport { Workflow } from './types';\nimport { WorkflowExecutionsApi } from './workflow-executions-api';\n\nexport class WorkflowsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<Workflow>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<Workflow>>('/workflows', params);\n }\n\n async create(workflow: Workflow): Promise<Workflow> {\n return this.httpPost<Workflow>('/workflows', workflow);\n }\n\n async update(workflowId: string, workflow: Workflow): Promise<Workflow> {\n workflow.id = workflowId;\n return this.httpPut<Workflow>('/workflows/' + workflowId, workflow);\n }\n\n async remove(workflowId: string): Promise<void> {\n await this.httpDelete('/workflows/' + workflowId);\n }\n\n async get(workflowId: string): Promise<Workflow> {\n return this.httpGet<Workflow>('/workflows/' + workflowId);\n }\n\n executions(): WorkflowExecutionsApi {\n return new WorkflowExecutionsApi(this.getBaseUrl(), this.getAuthProvider());\n }\n\n async listRevisions(workflowId: string): Promise<Revision[]> {\n return this.httpGet<Revision[]>('/workflows/' + workflowId + '/revisions');\n }\n\n async getRevision(workflowId: string, revisionId: string): Promise<Revision> {\n return this.httpGet<Revision>('/workflows/' + workflowId + '/revisions/' + revisionId);\n }\n\n async rollback(workflowId: string, revisionId: string): Promise<Workflow> {\n return this.httpPost<Workflow>('/workflows/' + workflowId + '/revisions/' + revisionId + '/rollback', {});\n }\n}\n","import { HttpApi } from '../http-api';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n Credentials,\n AuthorizeRequest,\n AuthorizeResponse,\n OAuth2CallbackResponse,\n} from './types';\n\nexport class CredentialsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async authorize(provider: string, request: AuthorizeRequest): Promise<AuthorizeResponse> {\n return this.httpPost<AuthorizeResponse>('/credentials/' + provider + '/authorize', request);\n }\n\n async handleOAuth2Callback(provider: string, code: string, state: string, scope?: string): Promise<OAuth2CallbackResponse> {\n const params: Record<string, unknown> = { code, state };\n if (scope) params.scope = scope;\n return this.httpGet<OAuth2CallbackResponse>('/credentials/' + provider + '/oauth2/callback', params);\n }\n\n async list(): Promise<Credentials[]> {\n return this.httpGet<Credentials[]>('/credentials');\n }\n\n async getByProvider(provider: string): Promise<Credentials[]> {\n return this.httpGet<Credentials[]>('/credentials/' + provider);\n }\n\n async getById(credentialsId: string): Promise<Credentials> {\n return this.httpGet<Credentials>('/credentials/all/' + credentialsId);\n }\n\n async remove(credentialsId: string): Promise<void> {\n await this.httpDelete('/credentials/all/' + credentialsId);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { FeatureTemplate, McpToolsResponse } from './types';\nimport { McpServerConfiguration } from '../agents/types';\n\nexport class FeatureTemplatesApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<FeatureTemplate>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<FeatureTemplate>>('/features/templates', params);\n }\n\n async get(templateId: string): Promise<FeatureTemplate> {\n return this.httpGet<FeatureTemplate>('/features/templates/' + templateId);\n }\n\n async create(template: FeatureTemplate): Promise<FeatureTemplate> {\n return this.httpPost<FeatureTemplate>('/features/templates', template);\n }\n\n async update(templateId: string, template: FeatureTemplate): Promise<FeatureTemplate> {\n return this.httpPut<FeatureTemplate>('/features/templates/' + templateId, template);\n }\n\n async patch(templateId: string, template: FeatureTemplate): Promise<FeatureTemplate> {\n return this.httpPatch<FeatureTemplate>('/features/templates/' + templateId, template);\n }\n\n async remove(templateId: string): Promise<void> {\n await this.httpDelete('/features/templates/' + templateId);\n }\n\n async getMcpAvailableTools(configuration: McpServerConfiguration, credentialsId?: string): Promise<McpToolsResponse> {\n const params = credentialsId ? { credentialsId } : undefined;\n return this.httpPost<McpToolsResponse>('/features/templates/mcp/available-tools', configuration, params);\n }\n}\n","import { AuthenticationProvider } from '../auth/authentication-provider';\nimport { FeatureTemplatesApi } from './feature-templates-api';\n\nexport class FeaturesApi {\n private readonly baseUrl: string;\n private readonly auth: string | AuthenticationProvider;\n\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n this.baseUrl = baseUrl;\n this.auth = auth;\n }\n\n templates(): FeatureTemplatesApi {\n return new FeatureTemplatesApi(this.baseUrl, this.auth);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { TriggerExecutionResult } from './types';\n\nexport class TriggerExecutionsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(triggerId: string, page?: number, size?: number): Promise<Paginated<TriggerExecutionResult>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n return this.httpGet<Paginated<TriggerExecutionResult>>('/triggers/' + triggerId + '/executions', params);\n }\n\n async execute(triggerId: string, execution: TriggerExecutionResult): Promise<TriggerExecutionResult> {\n return this.httpPost<TriggerExecutionResult>('/triggers/' + triggerId + '/executions', execution);\n }\n\n async get(executionId: string): Promise<TriggerExecutionResult> {\n return this.httpGet<TriggerExecutionResult>('/triggers/executions/' + executionId);\n }\n\n async remove(executionId: string): Promise<void> {\n await this.httpDelete('/triggers/executions/' + executionId);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { Trigger } from './types';\nimport { TriggerExecutionsApi } from './trigger-executions-api';\n\nexport class TriggersApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<Trigger>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<Trigger>>('/triggers', params);\n }\n\n async create(trigger: Trigger): Promise<Trigger> {\n return this.httpPost<Trigger>('/triggers', trigger);\n }\n\n async update(triggerId: string, trigger: Trigger): Promise<Trigger> {\n return this.httpPut<Trigger>('/triggers/' + triggerId, trigger);\n }\n\n async remove(triggerId: string): Promise<void> {\n await this.httpDelete('/triggers/' + triggerId);\n }\n\n async get(triggerId: string): Promise<Trigger> {\n return this.httpGet<Trigger>('/triggers/' + triggerId);\n }\n\n executions(): TriggerExecutionsApi {\n return new TriggerExecutionsApi(this.getBaseUrl(), this.getAuthProvider());\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { ServicePrice } from './types';\n\nexport class ServicePricesApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<ServicePrice>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<ServicePrice>>('/service-prices', params);\n }\n\n async get(id: string): Promise<ServicePrice> {\n return this.httpGet<ServicePrice>('/service-prices/' + id);\n }\n\n async create(servicePrice: ServicePrice): Promise<ServicePrice> {\n return this.httpPost<ServicePrice>('/service-prices', servicePrice);\n }\n\n async update(id: string, servicePrice: ServicePrice): Promise<ServicePrice> {\n return this.httpPut<ServicePrice>('/service-prices/' + id, servicePrice);\n }\n\n async remove(id: string): Promise<void> {\n await this.httpDelete('/service-prices/' + id);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n Session,\n GenerationRequest,\n GenerationResponse,\n Message,\n CommittedUsage,\n} from './types';\n\nexport class SessionsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(\n keyword?: string | null,\n status?: string | null,\n agentId?: string | null,\n userId?: string | null,\n page?: number,\n size?: number,\n ): Promise<Paginated<Session>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n if (keyword) params.keyword = keyword;\n if (status) params.status = status;\n if (agentId) params.agentId = agentId;\n if (userId) params.userId = userId;\n return this.httpGet<Paginated<Session>>('/sessions', params);\n }\n\n async get(sessionId: string): Promise<Session> {\n return this.httpGet<Session>('/sessions/' + sessionId);\n }\n\n async getUsage(sessionId: string): Promise<CommittedUsage[]> {\n return this.httpGet<CommittedUsage[]>('/sessions/' + sessionId + '/usage');\n }\n\n async generateMessage(code: string, request: GenerationRequest): Promise<GenerationResponse> {\n return this.httpPost<GenerationResponse>('/sessions/' + code + '/messages', request);\n }\n\n async findMessages(code: string, page?: number, size?: number): Promise<Paginated<Message>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n return this.httpGet<Paginated<Message>>('/sessions/' + code + '/messages', params);\n }\n\n async remove(code: string): Promise<void> {\n await this.httpDelete('/sessions/' + code);\n }\n\n async rename(sessionId: string, name: string): Promise<Session> {\n return this.httpPut<Session>('/sessions/' + sessionId + '/name', { name });\n }\n}\n","import { HttpApi } from '../http-api';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { Paginated } from '../paginated';\nimport { Mission } from './types';\n\nexport class MissionsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, status?: string | null): Promise<Paginated<Mission>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n if (keyword) params.keyword = keyword;\n if (status) params.status = status;\n return this.httpGet<Paginated<Mission>>('/missions', params);\n }\n\n async get(missionId: string): Promise<Mission> {\n return this.httpGet<Mission>('/missions/' + missionId);\n }\n\n async create(mission: Mission): Promise<Mission> {\n return this.httpPost<Mission>('/missions', mission);\n }\n\n async update(missionId: string, mission: Mission): Promise<Mission> {\n return this.httpPut<Mission>('/missions/' + missionId, mission);\n }\n\n async remove(missionId: string): Promise<void> {\n await this.httpDelete('/missions/' + missionId);\n }\n\n async generate(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/generate');\n }\n\n async execute(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/execute');\n }\n\n async retry(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/retry');\n }\n\n async replan(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/replan');\n }\n\n async sendInstruction(missionId: string, instruction: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/instructions', { instruction });\n }\n\n async stop(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/stop');\n }\n\n async resume(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/continue');\n }\n}\n","import { AuthenticationProvider } from '../auth/authentication-provider';\nimport { ApiException } from '../exceptions';\nimport {\n Customer,\n Subscription,\n Invoice,\n CreateCustomerRequest,\n UpdateCustomerRequest,\n CreateSubscriptionRequest,\n UpgradeSubscriptionRequest,\n DowngradeSubscriptionRequest,\n MentorizeSubscriptionRequest,\n} from './types';\n\nexport class BillingClient {\n private readonly baseUrl: string;\n private readonly authProvider: AuthenticationProvider | string | null;\n\n constructor(baseUrl?: string, auth?: string | AuthenticationProvider | null) {\n this.baseUrl = (baseUrl || 'https://persona.applica.guru/billing').replace(/\\/$/, '');\n this.authProvider = auth ?? null;\n }\n\n private buildHeaders(): Headers {\n const headers = new Headers();\n headers.set('Content-Type', 'application/json');\n if (this.authProvider) {\n if (typeof this.authProvider === 'string') {\n headers.set('x-persona-apikey', this.authProvider);\n } else {\n this.authProvider.applyHeaders(headers);\n }\n }\n return headers;\n }\n\n private async request<T>(path: string, method: string, body?: unknown): Promise<T> {\n const response = await fetch(this.baseUrl + path, {\n method,\n headers: this.buildHeaders(),\n body: body ? JSON.stringify(body) : undefined,\n });\n if (!response.ok) {\n const text = await response.text();\n throw new ApiException(response.status, text);\n }\n const text = await response.text();\n return text ? JSON.parse(text) : (undefined as T);\n }\n\n async createCustomer(request: CreateCustomerRequest): Promise<Customer> {\n return this.request<Customer>('/customers', 'POST', request);\n }\n\n async updateCustomer(owner: string, request: UpdateCustomerRequest): Promise<Customer> {\n return this.request<Customer>('/customers/' + owner, 'PUT', request);\n }\n\n async getCustomer(owner: string): Promise<Customer> {\n return this.request<Customer>('/customers/' + owner, 'GET');\n }\n\n async saveCustomer(customer: Customer): Promise<Customer> {\n return this.request<Customer>('/customers', 'POST', customer);\n }\n\n async deleteCustomer(owner: string): Promise<void> {\n await this.request<void>('/customers/' + owner, 'DELETE');\n }\n\n async createSubscription(request: CreateSubscriptionRequest): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + request.owner + '/subscription', 'POST', request);\n }\n\n async getSubscription(owner: string): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription', 'GET');\n }\n\n async getProjectSubscription(projectId: string): Promise<Subscription> {\n return this.request<Subscription>('/projects/' + projectId + '/subscription', 'GET');\n }\n\n async changeProjectSubscriptionPlan(projectId: string, request: { toPlanType: string }): Promise<Subscription> {\n return this.request<Subscription>('/projects/' + projectId + '/subscription/actions/change-plan', 'POST', request);\n }\n\n async addProjectSubscriptionCredits(projectId: string, request: { credits: number }): Promise<Subscription> {\n return this.request<Subscription>('/projects/' + projectId + '/subscription/actions/add-credits', 'POST', request);\n }\n\n async beginUpgrade(owner: string, request: UpgradeSubscriptionRequest): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription/actions/upgrade', 'POST', request);\n }\n\n async downgrade(owner: string, request: DowngradeSubscriptionRequest): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription/actions/downgrade', 'POST', request);\n }\n\n async mentorize(owner: string, request: MentorizeSubscriptionRequest): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription/actions/mentorize', 'POST', request);\n }\n\n async addCredits(owner: string, credits: number): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription/credits', 'POST', { credits });\n }\n\n async useCredits(owner: string, credits: number, services: string[], referenceId?: string): Promise<Subscription> {\n const body: Record<string, unknown> = { credits, services };\n if (referenceId) body.referenceId = referenceId;\n return this.request<Subscription>('/customers/' + owner + '/subscription/credits', 'DELETE', body);\n }\n\n async getCredits(owner: string): Promise<number> {\n try {\n const result = await this.request<{ credits?: number }>('/customers/' + owner + '/subscription/credits', 'GET');\n return result.credits ?? 0;\n } catch {\n return 0;\n }\n }\n\n async isValid(owner: string): Promise<boolean> {\n try {\n const result = await this.request<{ valid?: boolean }>('/customers/' + owner + '/subscription/valid', 'GET');\n return result.valid ?? false;\n } catch {\n return false;\n }\n }\n\n async listInvoices(owner: string, dateFrom?: string, dateTo?: string): Promise<Invoice[]> {\n const params: string[] = [];\n if (dateFrom) params.push('date_from=' + dateFrom);\n if (dateTo) params.push('date_to=' + dateTo);\n const query = params.length > 0 ? '?' + params.join('&') : '';\n return this.request<Invoice[]>('/customers/' + owner + '/invoices' + query, 'GET');\n }\n\n async cancelSubscription(owner: string): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription/actions/cancel', 'POST', {});\n }\n}\n","import { HttpApi } from '../http-api';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\n\nexport class ValuesApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async get(category: string): Promise<Record<string, unknown>[]> {\n return this.httpGet<Record<string, unknown>[]>('/values/' + category);\n }\n\n async getLanguageCodes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/language-codes');\n }\n\n async getModelNames(): Promise<string[]> {\n return this.httpGet<string[]>('/values/model-names');\n }\n\n async getModelProviders(): Promise<string[]> {\n return this.httpGet<string[]>('/values/model-providers');\n }\n\n async getKnowledgeTypes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/knowledge-types');\n }\n\n async getCollaborationModes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/collaboration-modes');\n }\n\n async getTranscriberNames(): Promise<string[]> {\n return this.httpGet<string[]>('/values/transcriber-names');\n }\n\n async getSynthesizerNames(): Promise<string[]> {\n return this.httpGet<string[]>('/values/synthesizer-names');\n }\n\n async getSynthesizerVoices(synthesizerName: string): Promise<string[]> {\n return this.httpGet<string[]>('/values/synthesizers/' + synthesizerName + '/voices');\n }\n\n async getStmTypes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/stm-types');\n }\n\n async getDocumentExtractors(): Promise<string[]> {\n return this.httpGet<string[]>('/values/document-extractors');\n }\n\n async getEmbeddingModels(): Promise<string[]> {\n return this.httpGet<string[]>('/values/embedding-models');\n }\n\n async getQualityOptions(): Promise<string[]> {\n return this.httpGet<string[]>('/values/quality');\n }\n\n async getChunkSizeOptions(): Promise<string[]> {\n return this.httpGet<string[]>('/values/chunk-size');\n }\n\n async getFeatureTypes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/feature-types');\n }\n\n async getRoles(): Promise<string[]> {\n return this.httpGet<string[]>('/values/roles');\n }\n\n async getServiceUnits(): Promise<string[]> {\n return this.httpGet<string[]>('/values/service-units');\n }\n\n async getTriggerSourceTypes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/trigger-source-types');\n }\n\n async getTriggerDestinationTypes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/trigger-destination-types');\n }\n}\n","import { AuthenticationProvider } from './auth/authentication-provider';\nimport { ProjectsApi } from './projects/projects-api';\nimport { AgentsApi } from './agents/agents-api';\nimport { KnowledgeBasesApi } from './knowledges/knowledge-bases-api';\nimport { WorkflowsApi } from './workflows/workflows-api';\nimport { CredentialsApi } from './credentials/credentials-api';\nimport { FeaturesApi } from './features/features-api';\nimport { TriggersApi } from './triggers/triggers-api';\nimport { ServicePricesApi } from './service-prices/service-prices-api';\nimport { SessionsApi } from './sessions/sessions-api';\nimport { MissionsApi } from './missions/missions-api';\nimport { BillingClient } from './billing/billing-client';\nimport { ValuesApi } from './values/values-api';\n\nexport class PersonaSdk {\n private readonly baseUrl: string;\n private readonly workflowsBaseUrl: string;\n private readonly billingBaseUrl: string;\n\n constructor(baseUrl: string, workflowsBaseUrl: string, billingBaseUrl?: string) {\n this.baseUrl = baseUrl;\n this.workflowsBaseUrl = workflowsBaseUrl;\n this.billingBaseUrl = billingBaseUrl || 'https://persona.applica.guru/billing';\n }\n\n projects(apiKey: string): ProjectsApi;\n projects(authProvider: AuthenticationProvider): ProjectsApi;\n projects(auth: string | AuthenticationProvider): ProjectsApi {\n return new ProjectsApi(this.baseUrl, auth, this.billingBaseUrl);\n }\n\n agents(apiKey: string): AgentsApi;\n agents(authProvider: AuthenticationProvider): AgentsApi;\n agents(auth: string | AuthenticationProvider): AgentsApi {\n return new AgentsApi(this.baseUrl, auth);\n }\n\n knowledgeBases(apiKey: string): KnowledgeBasesApi;\n knowledgeBases(authProvider: AuthenticationProvider): KnowledgeBasesApi;\n knowledgeBases(auth: string | AuthenticationProvider): KnowledgeBasesApi {\n return new KnowledgeBasesApi(this.baseUrl, auth);\n }\n\n workflows(apiKey: string): WorkflowsApi;\n workflows(authProvider: AuthenticationProvider): WorkflowsApi;\n workflows(auth: string | AuthenticationProvider): WorkflowsApi {\n return new WorkflowsApi(this.workflowsBaseUrl, auth);\n }\n\n credentials(apiKey: string): CredentialsApi;\n credentials(authProvider: AuthenticationProvider): CredentialsApi;\n credentials(auth: string | AuthenticationProvider): CredentialsApi {\n return new CredentialsApi(this.baseUrl, auth);\n }\n\n features(apiKey: string): FeaturesApi;\n features(authProvider: AuthenticationProvider): FeaturesApi;\n features(auth: string | AuthenticationProvider): FeaturesApi {\n return new FeaturesApi(this.baseUrl, auth);\n }\n\n triggers(apiKey: string): TriggersApi;\n triggers(authProvider: AuthenticationProvider): TriggersApi;\n triggers(auth: string | AuthenticationProvider): TriggersApi {\n return new TriggersApi(this.baseUrl, auth);\n }\n\n servicePrices(apiKey: string): ServicePricesApi;\n servicePrices(authProvider: AuthenticationProvider): ServicePricesApi;\n servicePrices(auth: string | AuthenticationProvider): ServicePricesApi {\n return new ServicePricesApi(this.baseUrl, auth);\n }\n\n sessions(apiKey: string): SessionsApi;\n sessions(authProvider: AuthenticationProvider): SessionsApi;\n sessions(auth: string | AuthenticationProvider): SessionsApi {\n return new SessionsApi(this.baseUrl, auth);\n }\n\n missions(apiKey: string): MissionsApi;\n missions(authProvider: AuthenticationProvider): MissionsApi;\n missions(auth: string | AuthenticationProvider): MissionsApi {\n return new MissionsApi(this.baseUrl, auth);\n }\n\n billing(apiKey: string): BillingClient;\n billing(authProvider: AuthenticationProvider): BillingClient;\n billing(auth: string | AuthenticationProvider): BillingClient {\n return new BillingClient(this.billingBaseUrl, auth);\n }\n\n values(apiKey: string): ValuesApi;\n values(authProvider: AuthenticationProvider): ValuesApi;\n values(auth: string | AuthenticationProvider): ValuesApi {\n return new ValuesApi(this.baseUrl, auth);\n }\n}\n","import { AuthenticationProvider } from './authentication-provider';\n\nexport class BearerTokenAuthenticationProvider implements AuthenticationProvider {\n constructor(private readonly token: string) {}\n\n applyHeaders(headers: Headers): void {\n headers.set('Authorization', `Bearer ${this.token}`);\n }\n\n getCredentials(): string {\n return this.token;\n }\n}\n"],"names":["ApiException","statusCode","body","__publicField","ApiKeyAuthenticationProvider","apiKey","headers","HttpApi","baseUrl","page","size","path","params","url","key","value","response","text","ProjectsApi","auth","billingBaseUrl","keyword","p","s","projectId","request","method","AgentsApi","extraParams","agentId","synthesizerName","revisionId","prompt","sessionId","KnowledgeBaseDocumentsApi","knowledgeBaseId","documentId","KnowledgeBasesApi","id","WorkflowExecutionsApi","workflowId","executionId","WorkflowsApi","workflow","CredentialsApi","provider","code","state","scope","credentialsId","FeatureTemplatesApi","templateId","template","configuration","FeaturesApi","TriggerExecutionsApi","triggerId","execution","TriggersApi","trigger","ServicePricesApi","servicePrice","SessionsApi","status","userId","name","MissionsApi","missionId","mission","instruction","BillingClient","owner","customer","credits","services","referenceId","dateFrom","dateTo","query","ValuesApi","category","PersonaSdk","workflowsBaseUrl","BearerTokenAuthenticationProvider","token"],"mappings":"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"}
package/dist/bundle.es.js CHANGED
@@ -1,6 +1,6 @@
1
- var g = Object.defineProperty;
2
- var d = (o, t, s) => t in o ? g(o, t, { enumerable: !0, configurable: !0, writable: !0, value: s }) : o[t] = s;
3
- var c = (o, t, s) => d(o, typeof t != "symbol" ? t + "" : t, s);
1
+ var d = Object.defineProperty;
2
+ var g = (o, t, s) => t in o ? d(o, t, { enumerable: !0, configurable: !0, writable: !0, value: s }) : o[t] = s;
3
+ var c = (o, t, s) => g(o, typeof t != "symbol" ? t + "" : t, s);
4
4
  class p extends Error {
5
5
  constructor(s, e) {
6
6
  super(`API Error: ${s} - ${e}`);
@@ -123,6 +123,9 @@ class m extends u {
123
123
  async remove(s) {
124
124
  await this.httpDelete("/projects/" + s);
125
125
  }
126
+ async duplicate(s, e) {
127
+ return this.httpPost("/projects/" + s + "/actions/duplicate", e);
128
+ }
126
129
  async getSubscription(s) {
127
130
  return this.billingRequest("/projects/" + s + "/subscription", "GET");
128
131
  }
@@ -151,7 +154,7 @@ class m extends u {
151
154
  return a ? JSON.parse(a) : void 0;
152
155
  }
153
156
  }
154
- class w extends u {
157
+ class P extends u {
155
158
  constructor(t, s) {
156
159
  super(t, s);
157
160
  }
@@ -191,7 +194,7 @@ class w extends u {
191
194
  return this.httpGet("/agents/architect");
192
195
  }
193
196
  }
194
- class P extends u {
197
+ class w extends u {
195
198
  constructor(s, e, r) {
196
199
  super(s, e);
197
200
  c(this, "knowledgeBaseId");
@@ -235,7 +238,7 @@ class b extends u {
235
238
  await this.httpDelete("/knowledge-bases/" + t);
236
239
  }
237
240
  documents(t) {
238
- return new P(this.getBaseUrl(), this.getAuthProvider(), t);
241
+ return new w(this.getBaseUrl(), this.getAuthProvider(), t);
239
242
  }
240
243
  async searchChunks(t, s) {
241
244
  return this.httpPost("/knowledge-bases/" + t + "/search", s);
@@ -642,7 +645,7 @@ class O extends u {
642
645
  return this.httpGet("/values/trigger-destination-types");
643
646
  }
644
647
  }
645
- class C {
648
+ class q {
646
649
  constructor(t, s, e) {
647
650
  c(this, "baseUrl");
648
651
  c(this, "workflowsBaseUrl");
@@ -653,7 +656,7 @@ class C {
653
656
  return new m(this.baseUrl, t, this.billingBaseUrl);
654
657
  }
655
658
  agents(t) {
656
- return new w(this.baseUrl, t);
659
+ return new P(this.baseUrl, t);
657
660
  }
658
661
  knowledgeBases(t) {
659
662
  return new b(this.baseUrl, t);
@@ -686,7 +689,7 @@ class C {
686
689
  return new O(this.baseUrl, t);
687
690
  }
688
691
  }
689
- class E {
692
+ class C {
690
693
  constructor(t) {
691
694
  this.token = t;
692
695
  }
@@ -698,18 +701,18 @@ class E {
698
701
  }
699
702
  }
700
703
  export {
701
- w as AgentsApi,
704
+ P as AgentsApi,
702
705
  p as ApiException,
703
706
  y as ApiKeyAuthenticationProvider,
704
- E as BearerTokenAuthenticationProvider,
707
+ C as BearerTokenAuthenticationProvider,
705
708
  B as BillingClient,
706
709
  G as CredentialsApi,
707
710
  k as FeatureTemplatesApi,
708
711
  z as FeaturesApi,
709
- P as KnowledgeBaseDocumentsApi,
712
+ w as KnowledgeBaseDocumentsApi,
710
713
  b as KnowledgeBasesApi,
711
714
  A as MissionsApi,
712
- C as PersonaSdk,
715
+ q as PersonaSdk,
713
716
  m as ProjectsApi,
714
717
  S as ServicePricesApi,
715
718
  T as SessionsApi,
@@ -1 +1 @@
1
- {"version":3,"file":"bundle.es.js","sources":["../src/exceptions.ts","../src/auth/api-key-auth.ts","../src/http-api.ts","../src/projects/projects-api.ts","../src/agents/agents-api.ts","../src/knowledges/knowledge-base-documents-api.ts","../src/knowledges/knowledge-bases-api.ts","../src/workflows/workflow-executions-api.ts","../src/workflows/workflows-api.ts","../src/credentials/credentials-api.ts","../src/features/feature-templates-api.ts","../src/features/features-api.ts","../src/triggers/trigger-executions-api.ts","../src/triggers/triggers-api.ts","../src/service-prices/service-prices-api.ts","../src/sessions/sessions-api.ts","../src/missions/missions-api.ts","../src/billing/billing-client.ts","../src/values/values-api.ts","../src/persona-sdk.ts","../src/auth/bearer-token-auth.ts"],"sourcesContent":["export class ApiException extends Error {\n public readonly statusCode: number;\n public readonly body: string;\n\n constructor(statusCode: number, body: string) {\n super(`API Error: ${statusCode} - ${body}`);\n this.statusCode = statusCode;\n this.body = body;\n }\n}\n","import { AuthenticationProvider } from './authentication-provider';\n\nexport class ApiKeyAuthenticationProvider implements AuthenticationProvider {\n constructor(private readonly apiKey: string) {}\n\n applyHeaders(headers: Headers): void {\n headers.set('x-persona-apikey', this.apiKey);\n }\n\n getCredentials(): string {\n return this.apiKey;\n }\n}\n","import { ApiException } from './exceptions';\nimport { AuthenticationProvider } from './auth/authentication-provider';\nimport { ApiKeyAuthenticationProvider } from './auth/api-key-auth';\n\nexport abstract class HttpApi {\n private readonly baseUrl: string;\n private readonly authProvider: AuthenticationProvider;\n\n constructor(baseUrl: string, apiKey: string | AuthenticationProvider) {\n this.baseUrl = baseUrl;\n this.authProvider = typeof apiKey === 'string' ? new ApiKeyAuthenticationProvider(apiKey) : apiKey;\n }\n\n protected getBaseUrl(): string {\n return this.baseUrl;\n }\n\n protected getAuthProvider(): AuthenticationProvider {\n return this.authProvider;\n }\n\n protected normalizePageParams(page?: number, size?: number): { page: number; size: number } {\n return {\n page: page === undefined || page < 1 ? 1 : page,\n size: size === undefined || size < 1 ? 20 : size,\n };\n }\n\n private buildHeaders(): Headers {\n const headers = new Headers();\n headers.set('Content-Type', 'application/json');\n this.authProvider.applyHeaders(headers);\n return headers;\n }\n\n private buildUrl(path: string, params?: Record<string, unknown>): string {\n const url = new URL(this.baseUrl + path);\n if (params) {\n Object.entries(params).forEach(([key, value]) => {\n if (value !== null && value !== undefined) {\n url.searchParams.set(key, String(value));\n }\n });\n }\n return url.toString();\n }\n\n private async handleResponse<T>(response: Response): Promise<T> {\n if (!response.ok) {\n const body = await response.text();\n throw new ApiException(response.status, body);\n }\n const text = await response.text();\n return text ? JSON.parse(text) : (undefined as T);\n }\n\n protected async httpGet<T>(path: string, params?: Record<string, unknown>): Promise<T> {\n const response = await fetch(this.buildUrl(path, params), {\n method: 'GET',\n headers: this.buildHeaders(),\n });\n return this.handleResponse<T>(response);\n }\n\n protected async httpPost<T>(path: string, body?: unknown, params?: Record<string, unknown>): Promise<T> {\n const response = await fetch(this.buildUrl(path, params), {\n method: 'POST',\n headers: this.buildHeaders(),\n body: body ? JSON.stringify(body) : undefined,\n });\n return this.handleResponse<T>(response);\n }\n\n protected async httpPut<T>(path: string, body: unknown): Promise<T> {\n const response = await fetch(this.baseUrl + path, {\n method: 'PUT',\n headers: this.buildHeaders(),\n body: JSON.stringify(body),\n });\n return this.handleResponse<T>(response);\n }\n\n protected async httpPatch<T>(path: string, body: unknown): Promise<T> {\n const response = await fetch(this.baseUrl + path, {\n method: 'PATCH',\n headers: this.buildHeaders(),\n body: JSON.stringify(body),\n });\n return this.handleResponse<T>(response);\n }\n\n protected async httpDelete(path: string): Promise<void> {\n const response = await fetch(this.baseUrl + path, {\n method: 'DELETE',\n headers: this.buildHeaders(),\n });\n if (!response.ok) {\n const body = await response.text();\n throw new ApiException(response.status, body);\n }\n }\n}\n","import { HttpApi } from '../http-api';\nimport { ApiException } from '../exceptions';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n Project,\n ProjectCreateRequest,\n ProjectUpdateRequest,\n ProjectSubscription,\n ChangeProjectSubscriptionPlanRequest,\n AddProjectSubscriptionCreditsRequest,\n SetProjectSubscriptionInfiniteCreditsRequest,\n} from './types';\n\nexport class ProjectsApi extends HttpApi {\n private readonly billingBaseUrl: string;\n\n constructor(baseUrl: string, auth: string | AuthenticationProvider, billingBaseUrl?: string) {\n super(baseUrl, auth);\n this.billingBaseUrl = (billingBaseUrl || baseUrl).replace(/\\/$/, '');\n }\n\n async list(keyword: string | null, page: number, size: number): Promise<Paginated<Project>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<Project>>('/projects', params);\n }\n\n async get(projectId: string): Promise<Project> {\n return this.httpGet<Project>('/projects/' + projectId);\n }\n\n async getMine(): Promise<Project> {\n return this.httpGet<Project>('/projects/mine');\n }\n\n async create(request: ProjectCreateRequest): Promise<Project> {\n return this.httpPost<Project>('/projects', request);\n }\n\n async update(request: ProjectUpdateRequest): Promise<Project> {\n return this.httpPut<Project>('/projects/' + request.projectId, request);\n }\n\n async remove(projectId: string): Promise<void> {\n await this.httpDelete('/projects/' + projectId);\n }\n\n async getSubscription(projectId: string): Promise<ProjectSubscription> {\n return this.billingRequest<ProjectSubscription>('/projects/' + projectId + '/subscription', 'GET');\n }\n\n async changeSubscriptionPlan(projectId: string, request: ChangeProjectSubscriptionPlanRequest): Promise<ProjectSubscription> {\n return this.billingRequest<ProjectSubscription>('/projects/' + projectId + '/subscription/actions/change-plan', 'POST', request);\n }\n\n async addSubscriptionCredits(projectId: string, request: AddProjectSubscriptionCreditsRequest): Promise<ProjectSubscription> {\n return this.billingRequest<ProjectSubscription>('/projects/' + projectId + '/subscription/actions/add-credits', 'POST', request);\n }\n\n async setInfiniteCredits(projectId: string, request: SetProjectSubscriptionInfiniteCreditsRequest): Promise<ProjectSubscription> {\n return this.billingRequest<ProjectSubscription>('/projects/' + projectId + '/subscription/actions/set-infinite-credits', 'POST', request);\n }\n\n private async billingRequest<T>(path: string, method: string, body?: unknown): Promise<T> {\n const headers = new Headers();\n headers.set('Content-Type', 'application/json');\n this.getAuthProvider().applyHeaders(headers);\n\n const response = await fetch(this.billingBaseUrl + path, {\n method,\n headers,\n body: body ? JSON.stringify(body) : undefined,\n });\n\n if (!response.ok) {\n const text = await response.text();\n throw new ApiException(response.status, text);\n }\n\n const text = await response.text();\n return text ? JSON.parse(text) : (undefined as T);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n Agent,\n AgentCreateRequest,\n AgentUpdateRequest,\n SynthesizerVoice,\n Revision,\n} from './types';\n\nexport class AgentsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<Agent>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<Agent>>('/agents', params);\n }\n\n async get(agentId: string): Promise<Agent> {\n return this.httpGet<Agent>('/agents/' + agentId);\n }\n\n async create(request: AgentCreateRequest): Promise<Agent> {\n return this.httpPost<Agent>('/agents', request);\n }\n\n async update(request: AgentUpdateRequest): Promise<Agent> {\n return this.httpPut<Agent>('/agents/' + request.id, request);\n }\n\n async remove(agentId: string): Promise<void> {\n await this.httpDelete('/agents/' + agentId);\n }\n\n async getSynthesizerSupportedVoices(synthesizerName: string): Promise<SynthesizerVoice[]> {\n return this.httpGet<SynthesizerVoice[]>('/values/synthesizers/' + synthesizerName + '/voices');\n }\n\n async listRevisions(agentId: string): Promise<Revision[]> {\n return this.httpGet<Revision[]>('/agents/' + agentId + '/revisions');\n }\n\n async getRevision(agentId: string, revisionId: string): Promise<Revision> {\n return this.httpGet<Revision>('/agents/' + agentId + '/revisions/' + revisionId);\n }\n\n async rollback(agentId: string, revisionId: string): Promise<Agent> {\n return this.httpPost<Agent>('/agents/' + agentId + '/revisions/' + revisionId + '/rollback', {});\n }\n\n async generateSystemInstructions(prompt: string, sessionId?: string): Promise<string> {\n const body: Record<string, unknown> = { prompt };\n if (sessionId) body.sessionId = sessionId;\n const result = await this.httpPost<{ instructions: string }>('/agents/system-instructions', body);\n return result.instructions;\n }\n\n async getArchitect(): Promise<Agent> {\n return this.httpGet<Agent>('/agents/architect');\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n KnowledgeBaseDocument,\n KnowledgeBaseDocumentUploadRequest,\n} from './types';\n\nexport class KnowledgeBaseDocumentsApi extends HttpApi {\n private readonly knowledgeBaseId: string;\n\n constructor(baseUrl: string, auth: string | AuthenticationProvider, knowledgeBaseId: string) {\n super(baseUrl, auth);\n this.knowledgeBaseId = knowledgeBaseId;\n }\n\n async list(keyword?: string | null, page?: number, size?: number): Promise<Paginated<KnowledgeBaseDocument>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<KnowledgeBaseDocument>>('/knowledge-bases/' + this.knowledgeBaseId + '/documents', params);\n }\n\n async upload(request: KnowledgeBaseDocumentUploadRequest): Promise<KnowledgeBaseDocument> {\n return this.httpPost<KnowledgeBaseDocument>('/knowledge-bases/' + this.knowledgeBaseId + '/documents', request);\n }\n\n async get(documentId: string): Promise<KnowledgeBaseDocument> {\n return this.httpGet<KnowledgeBaseDocument>('/knowledge-bases/' + this.knowledgeBaseId + '/documents/' + documentId);\n }\n\n async reprocess(documentId: string): Promise<KnowledgeBaseDocument> {\n return this.httpPost<KnowledgeBaseDocument>('/knowledge-bases/' + this.knowledgeBaseId + '/documents', { document_id: documentId });\n }\n\n async remove(documentId: string): Promise<void> {\n await this.httpDelete('/knowledge-bases/' + this.knowledgeBaseId + '/documents/' + documentId);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n KnowledgeBase,\n KnowledgeBaseCreateRequest,\n KnowledgeBaseUpdateRequest,\n ChunkResult,\n SearchChunksRequest,\n} from './types';\nimport { KnowledgeBaseDocumentsApi } from './knowledge-base-documents-api';\n\nexport class KnowledgeBasesApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<KnowledgeBase>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<KnowledgeBase>>('/knowledge-bases', params);\n }\n\n async get(id: string): Promise<KnowledgeBase> {\n return this.httpGet<KnowledgeBase>('/knowledge-bases/' + id);\n }\n\n async create(request: KnowledgeBaseCreateRequest): Promise<KnowledgeBase> {\n return this.httpPost<KnowledgeBase>('/knowledge-bases', request);\n }\n\n async update(request: KnowledgeBaseUpdateRequest): Promise<KnowledgeBase> {\n return this.httpPut<KnowledgeBase>('/knowledge-bases/' + request.id, request);\n }\n\n async remove(id: string): Promise<void> {\n await this.httpDelete('/knowledge-bases/' + id);\n }\n\n documents(knowledgeBaseId: string): KnowledgeBaseDocumentsApi {\n return new KnowledgeBaseDocumentsApi(this.getBaseUrl(), this.getAuthProvider(), knowledgeBaseId);\n }\n\n async searchChunks(id: string, request: SearchChunksRequest): Promise<ChunkResult[]> {\n return this.httpPost<ChunkResult[]>('/knowledge-bases/' + id + '/search', request);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { Execution, ExecuteRequest } from './types';\n\nexport class WorkflowExecutionsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(workflowId: string, page?: number, size?: number): Promise<Paginated<Execution>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n return this.httpGet<Paginated<Execution>>('/workflows/' + workflowId + '/executions', params);\n }\n\n async get(workflowId: string, executionId: string): Promise<Execution> {\n return this.httpGet<Execution>('/workflows/' + workflowId + '/executions/' + executionId);\n }\n\n async run(workflowId: string, request: ExecuteRequest): Promise<Execution> {\n return this.httpPost<Execution>('/workflows/' + workflowId + '/executions', request);\n }\n\n async queue(workflowId: string, request: ExecuteRequest): Promise<Execution> {\n return this.httpPost<Execution>('/workflows/' + workflowId + '/executions/queue', request);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { Revision } from '../revisions/types';\nimport { Workflow } from './types';\nimport { WorkflowExecutionsApi } from './workflow-executions-api';\n\nexport class WorkflowsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<Workflow>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<Workflow>>('/workflows', params);\n }\n\n async create(workflow: Workflow): Promise<Workflow> {\n return this.httpPost<Workflow>('/workflows', workflow);\n }\n\n async update(workflowId: string, workflow: Workflow): Promise<Workflow> {\n workflow.id = workflowId;\n return this.httpPut<Workflow>('/workflows/' + workflowId, workflow);\n }\n\n async remove(workflowId: string): Promise<void> {\n await this.httpDelete('/workflows/' + workflowId);\n }\n\n async get(workflowId: string): Promise<Workflow> {\n return this.httpGet<Workflow>('/workflows/' + workflowId);\n }\n\n executions(): WorkflowExecutionsApi {\n return new WorkflowExecutionsApi(this.getBaseUrl(), this.getAuthProvider());\n }\n\n async listRevisions(workflowId: string): Promise<Revision[]> {\n return this.httpGet<Revision[]>('/workflows/' + workflowId + '/revisions');\n }\n\n async getRevision(workflowId: string, revisionId: string): Promise<Revision> {\n return this.httpGet<Revision>('/workflows/' + workflowId + '/revisions/' + revisionId);\n }\n\n async rollback(workflowId: string, revisionId: string): Promise<Workflow> {\n return this.httpPost<Workflow>('/workflows/' + workflowId + '/revisions/' + revisionId + '/rollback', {});\n }\n}\n","import { HttpApi } from '../http-api';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n Credentials,\n AuthorizeRequest,\n AuthorizeResponse,\n OAuth2CallbackResponse,\n} from './types';\n\nexport class CredentialsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async authorize(provider: string, request: AuthorizeRequest): Promise<AuthorizeResponse> {\n return this.httpPost<AuthorizeResponse>('/credentials/' + provider + '/authorize', request);\n }\n\n async handleOAuth2Callback(provider: string, code: string, state: string, scope?: string): Promise<OAuth2CallbackResponse> {\n const params: Record<string, unknown> = { code, state };\n if (scope) params.scope = scope;\n return this.httpGet<OAuth2CallbackResponse>('/credentials/' + provider + '/oauth2/callback', params);\n }\n\n async list(): Promise<Credentials[]> {\n return this.httpGet<Credentials[]>('/credentials');\n }\n\n async getByProvider(provider: string): Promise<Credentials[]> {\n return this.httpGet<Credentials[]>('/credentials/' + provider);\n }\n\n async getById(credentialsId: string): Promise<Credentials> {\n return this.httpGet<Credentials>('/credentials/all/' + credentialsId);\n }\n\n async remove(credentialsId: string): Promise<void> {\n await this.httpDelete('/credentials/all/' + credentialsId);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { FeatureTemplate, McpToolsResponse } from './types';\nimport { McpServerConfiguration } from '../agents/types';\n\nexport class FeatureTemplatesApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<FeatureTemplate>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<FeatureTemplate>>('/features/templates', params);\n }\n\n async get(templateId: string): Promise<FeatureTemplate> {\n return this.httpGet<FeatureTemplate>('/features/templates/' + templateId);\n }\n\n async create(template: FeatureTemplate): Promise<FeatureTemplate> {\n return this.httpPost<FeatureTemplate>('/features/templates', template);\n }\n\n async update(templateId: string, template: FeatureTemplate): Promise<FeatureTemplate> {\n return this.httpPut<FeatureTemplate>('/features/templates/' + templateId, template);\n }\n\n async patch(templateId: string, template: FeatureTemplate): Promise<FeatureTemplate> {\n return this.httpPatch<FeatureTemplate>('/features/templates/' + templateId, template);\n }\n\n async remove(templateId: string): Promise<void> {\n await this.httpDelete('/features/templates/' + templateId);\n }\n\n async getMcpAvailableTools(configuration: McpServerConfiguration, credentialsId?: string): Promise<McpToolsResponse> {\n const params = credentialsId ? { credentialsId } : undefined;\n return this.httpPost<McpToolsResponse>('/features/templates/mcp/available-tools', configuration, params);\n }\n}\n","import { AuthenticationProvider } from '../auth/authentication-provider';\nimport { FeatureTemplatesApi } from './feature-templates-api';\n\nexport class FeaturesApi {\n private readonly baseUrl: string;\n private readonly auth: string | AuthenticationProvider;\n\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n this.baseUrl = baseUrl;\n this.auth = auth;\n }\n\n templates(): FeatureTemplatesApi {\n return new FeatureTemplatesApi(this.baseUrl, this.auth);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { TriggerExecutionResult } from './types';\n\nexport class TriggerExecutionsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(triggerId: string, page?: number, size?: number): Promise<Paginated<TriggerExecutionResult>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n return this.httpGet<Paginated<TriggerExecutionResult>>('/triggers/' + triggerId + '/executions', params);\n }\n\n async execute(triggerId: string, execution: TriggerExecutionResult): Promise<TriggerExecutionResult> {\n return this.httpPost<TriggerExecutionResult>('/triggers/' + triggerId + '/executions', execution);\n }\n\n async get(executionId: string): Promise<TriggerExecutionResult> {\n return this.httpGet<TriggerExecutionResult>('/triggers/executions/' + executionId);\n }\n\n async remove(executionId: string): Promise<void> {\n await this.httpDelete('/triggers/executions/' + executionId);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { Trigger } from './types';\nimport { TriggerExecutionsApi } from './trigger-executions-api';\n\nexport class TriggersApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<Trigger>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<Trigger>>('/triggers', params);\n }\n\n async create(trigger: Trigger): Promise<Trigger> {\n return this.httpPost<Trigger>('/triggers', trigger);\n }\n\n async update(triggerId: string, trigger: Trigger): Promise<Trigger> {\n return this.httpPut<Trigger>('/triggers/' + triggerId, trigger);\n }\n\n async remove(triggerId: string): Promise<void> {\n await this.httpDelete('/triggers/' + triggerId);\n }\n\n async get(triggerId: string): Promise<Trigger> {\n return this.httpGet<Trigger>('/triggers/' + triggerId);\n }\n\n executions(): TriggerExecutionsApi {\n return new TriggerExecutionsApi(this.getBaseUrl(), this.getAuthProvider());\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { ServicePrice } from './types';\n\nexport class ServicePricesApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<ServicePrice>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<ServicePrice>>('/service-prices', params);\n }\n\n async get(id: string): Promise<ServicePrice> {\n return this.httpGet<ServicePrice>('/service-prices/' + id);\n }\n\n async create(servicePrice: ServicePrice): Promise<ServicePrice> {\n return this.httpPost<ServicePrice>('/service-prices', servicePrice);\n }\n\n async update(id: string, servicePrice: ServicePrice): Promise<ServicePrice> {\n return this.httpPut<ServicePrice>('/service-prices/' + id, servicePrice);\n }\n\n async remove(id: string): Promise<void> {\n await this.httpDelete('/service-prices/' + id);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n Session,\n GenerationRequest,\n GenerationResponse,\n Message,\n CommittedUsage,\n} from './types';\n\nexport class SessionsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(\n keyword?: string | null,\n status?: string | null,\n agentId?: string | null,\n userId?: string | null,\n page?: number,\n size?: number,\n ): Promise<Paginated<Session>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n if (keyword) params.keyword = keyword;\n if (status) params.status = status;\n if (agentId) params.agentId = agentId;\n if (userId) params.userId = userId;\n return this.httpGet<Paginated<Session>>('/sessions', params);\n }\n\n async get(sessionId: string): Promise<Session> {\n return this.httpGet<Session>('/sessions/' + sessionId);\n }\n\n async getUsage(sessionId: string): Promise<CommittedUsage[]> {\n return this.httpGet<CommittedUsage[]>('/sessions/' + sessionId + '/usage');\n }\n\n async generateMessage(code: string, request: GenerationRequest): Promise<GenerationResponse> {\n return this.httpPost<GenerationResponse>('/sessions/' + code + '/messages', request);\n }\n\n async findMessages(code: string, page?: number, size?: number): Promise<Paginated<Message>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n return this.httpGet<Paginated<Message>>('/sessions/' + code + '/messages', params);\n }\n\n async remove(code: string): Promise<void> {\n await this.httpDelete('/sessions/' + code);\n }\n\n async rename(sessionId: string, name: string): Promise<Session> {\n return this.httpPut<Session>('/sessions/' + sessionId + '/name', { name });\n }\n}\n","import { HttpApi } from '../http-api';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { Paginated } from '../paginated';\nimport { Mission } from './types';\n\nexport class MissionsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, status?: string | null): Promise<Paginated<Mission>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n if (keyword) params.keyword = keyword;\n if (status) params.status = status;\n return this.httpGet<Paginated<Mission>>('/missions', params);\n }\n\n async get(missionId: string): Promise<Mission> {\n return this.httpGet<Mission>('/missions/' + missionId);\n }\n\n async create(mission: Mission): Promise<Mission> {\n return this.httpPost<Mission>('/missions', mission);\n }\n\n async update(missionId: string, mission: Mission): Promise<Mission> {\n return this.httpPut<Mission>('/missions/' + missionId, mission);\n }\n\n async remove(missionId: string): Promise<void> {\n await this.httpDelete('/missions/' + missionId);\n }\n\n async generate(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/generate');\n }\n\n async execute(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/execute');\n }\n\n async retry(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/retry');\n }\n\n async replan(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/replan');\n }\n\n async sendInstruction(missionId: string, instruction: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/instructions', { instruction });\n }\n\n async stop(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/stop');\n }\n\n async resume(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/continue');\n }\n}\n","import { AuthenticationProvider } from '../auth/authentication-provider';\nimport { ApiException } from '../exceptions';\nimport {\n Customer,\n Subscription,\n Invoice,\n CreateCustomerRequest,\n UpdateCustomerRequest,\n CreateSubscriptionRequest,\n UpgradeSubscriptionRequest,\n DowngradeSubscriptionRequest,\n MentorizeSubscriptionRequest,\n} from './types';\n\nexport class BillingClient {\n private readonly baseUrl: string;\n private readonly authProvider: AuthenticationProvider | string | null;\n\n constructor(baseUrl?: string, auth?: string | AuthenticationProvider | null) {\n this.baseUrl = (baseUrl || 'https://persona.applica.guru/billing').replace(/\\/$/, '');\n this.authProvider = auth ?? null;\n }\n\n private buildHeaders(): Headers {\n const headers = new Headers();\n headers.set('Content-Type', 'application/json');\n if (this.authProvider) {\n if (typeof this.authProvider === 'string') {\n headers.set('x-persona-apikey', this.authProvider);\n } else {\n this.authProvider.applyHeaders(headers);\n }\n }\n return headers;\n }\n\n private async request<T>(path: string, method: string, body?: unknown): Promise<T> {\n const response = await fetch(this.baseUrl + path, {\n method,\n headers: this.buildHeaders(),\n body: body ? JSON.stringify(body) : undefined,\n });\n if (!response.ok) {\n const text = await response.text();\n throw new ApiException(response.status, text);\n }\n const text = await response.text();\n return text ? JSON.parse(text) : (undefined as T);\n }\n\n async createCustomer(request: CreateCustomerRequest): Promise<Customer> {\n return this.request<Customer>('/customers', 'POST', request);\n }\n\n async updateCustomer(owner: string, request: UpdateCustomerRequest): Promise<Customer> {\n return this.request<Customer>('/customers/' + owner, 'PUT', request);\n }\n\n async getCustomer(owner: string): Promise<Customer> {\n return this.request<Customer>('/customers/' + owner, 'GET');\n }\n\n async saveCustomer(customer: Customer): Promise<Customer> {\n return this.request<Customer>('/customers', 'POST', customer);\n }\n\n async deleteCustomer(owner: string): Promise<void> {\n await this.request<void>('/customers/' + owner, 'DELETE');\n }\n\n async createSubscription(request: CreateSubscriptionRequest): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + request.owner + '/subscription', 'POST', request);\n }\n\n async getSubscription(owner: string): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription', 'GET');\n }\n\n async getProjectSubscription(projectId: string): Promise<Subscription> {\n return this.request<Subscription>('/projects/' + projectId + '/subscription', 'GET');\n }\n\n async changeProjectSubscriptionPlan(projectId: string, request: { toPlanType: string }): Promise<Subscription> {\n return this.request<Subscription>('/projects/' + projectId + '/subscription/actions/change-plan', 'POST', request);\n }\n\n async addProjectSubscriptionCredits(projectId: string, request: { credits: number }): Promise<Subscription> {\n return this.request<Subscription>('/projects/' + projectId + '/subscription/actions/add-credits', 'POST', request);\n }\n\n async beginUpgrade(owner: string, request: UpgradeSubscriptionRequest): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription/actions/upgrade', 'POST', request);\n }\n\n async downgrade(owner: string, request: DowngradeSubscriptionRequest): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription/actions/downgrade', 'POST', request);\n }\n\n async mentorize(owner: string, request: MentorizeSubscriptionRequest): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription/actions/mentorize', 'POST', request);\n }\n\n async addCredits(owner: string, credits: number): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription/credits', 'POST', { credits });\n }\n\n async useCredits(owner: string, credits: number, services: string[], referenceId?: string): Promise<Subscription> {\n const body: Record<string, unknown> = { credits, services };\n if (referenceId) body.referenceId = referenceId;\n return this.request<Subscription>('/customers/' + owner + '/subscription/credits', 'DELETE', body);\n }\n\n async getCredits(owner: string): Promise<number> {\n try {\n const result = await this.request<{ credits?: number }>('/customers/' + owner + '/subscription/credits', 'GET');\n return result.credits ?? 0;\n } catch {\n return 0;\n }\n }\n\n async isValid(owner: string): Promise<boolean> {\n try {\n const result = await this.request<{ valid?: boolean }>('/customers/' + owner + '/subscription/valid', 'GET');\n return result.valid ?? false;\n } catch {\n return false;\n }\n }\n\n async listInvoices(owner: string, dateFrom?: string, dateTo?: string): Promise<Invoice[]> {\n const params: string[] = [];\n if (dateFrom) params.push('date_from=' + dateFrom);\n if (dateTo) params.push('date_to=' + dateTo);\n const query = params.length > 0 ? '?' + params.join('&') : '';\n return this.request<Invoice[]>('/customers/' + owner + '/invoices' + query, 'GET');\n }\n\n async cancelSubscription(owner: string): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription/actions/cancel', 'POST', {});\n }\n}\n","import { HttpApi } from '../http-api';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\n\nexport class ValuesApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async get(category: string): Promise<Record<string, unknown>[]> {\n return this.httpGet<Record<string, unknown>[]>('/values/' + category);\n }\n\n async getLanguageCodes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/language-codes');\n }\n\n async getModelNames(): Promise<string[]> {\n return this.httpGet<string[]>('/values/model-names');\n }\n\n async getModelProviders(): Promise<string[]> {\n return this.httpGet<string[]>('/values/model-providers');\n }\n\n async getKnowledgeTypes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/knowledge-types');\n }\n\n async getCollaborationModes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/collaboration-modes');\n }\n\n async getTranscriberNames(): Promise<string[]> {\n return this.httpGet<string[]>('/values/transcriber-names');\n }\n\n async getSynthesizerNames(): Promise<string[]> {\n return this.httpGet<string[]>('/values/synthesizer-names');\n }\n\n async getSynthesizerVoices(synthesizerName: string): Promise<string[]> {\n return this.httpGet<string[]>('/values/synthesizers/' + synthesizerName + '/voices');\n }\n\n async getStmTypes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/stm-types');\n }\n\n async getDocumentExtractors(): Promise<string[]> {\n return this.httpGet<string[]>('/values/document-extractors');\n }\n\n async getEmbeddingModels(): Promise<string[]> {\n return this.httpGet<string[]>('/values/embedding-models');\n }\n\n async getQualityOptions(): Promise<string[]> {\n return this.httpGet<string[]>('/values/quality');\n }\n\n async getChunkSizeOptions(): Promise<string[]> {\n return this.httpGet<string[]>('/values/chunk-size');\n }\n\n async getFeatureTypes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/feature-types');\n }\n\n async getRoles(): Promise<string[]> {\n return this.httpGet<string[]>('/values/roles');\n }\n\n async getServiceUnits(): Promise<string[]> {\n return this.httpGet<string[]>('/values/service-units');\n }\n\n async getTriggerSourceTypes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/trigger-source-types');\n }\n\n async getTriggerDestinationTypes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/trigger-destination-types');\n }\n}\n","import { AuthenticationProvider } from './auth/authentication-provider';\nimport { ProjectsApi } from './projects/projects-api';\nimport { AgentsApi } from './agents/agents-api';\nimport { KnowledgeBasesApi } from './knowledges/knowledge-bases-api';\nimport { WorkflowsApi } from './workflows/workflows-api';\nimport { CredentialsApi } from './credentials/credentials-api';\nimport { FeaturesApi } from './features/features-api';\nimport { TriggersApi } from './triggers/triggers-api';\nimport { ServicePricesApi } from './service-prices/service-prices-api';\nimport { SessionsApi } from './sessions/sessions-api';\nimport { MissionsApi } from './missions/missions-api';\nimport { BillingClient } from './billing/billing-client';\nimport { ValuesApi } from './values/values-api';\n\nexport class PersonaSdk {\n private readonly baseUrl: string;\n private readonly workflowsBaseUrl: string;\n private readonly billingBaseUrl: string;\n\n constructor(baseUrl: string, workflowsBaseUrl: string, billingBaseUrl?: string) {\n this.baseUrl = baseUrl;\n this.workflowsBaseUrl = workflowsBaseUrl;\n this.billingBaseUrl = billingBaseUrl || 'https://persona.applica.guru/billing';\n }\n\n projects(apiKey: string): ProjectsApi;\n projects(authProvider: AuthenticationProvider): ProjectsApi;\n projects(auth: string | AuthenticationProvider): ProjectsApi {\n return new ProjectsApi(this.baseUrl, auth, this.billingBaseUrl);\n }\n\n agents(apiKey: string): AgentsApi;\n agents(authProvider: AuthenticationProvider): AgentsApi;\n agents(auth: string | AuthenticationProvider): AgentsApi {\n return new AgentsApi(this.baseUrl, auth);\n }\n\n knowledgeBases(apiKey: string): KnowledgeBasesApi;\n knowledgeBases(authProvider: AuthenticationProvider): KnowledgeBasesApi;\n knowledgeBases(auth: string | AuthenticationProvider): KnowledgeBasesApi {\n return new KnowledgeBasesApi(this.baseUrl, auth);\n }\n\n workflows(apiKey: string): WorkflowsApi;\n workflows(authProvider: AuthenticationProvider): WorkflowsApi;\n workflows(auth: string | AuthenticationProvider): WorkflowsApi {\n return new WorkflowsApi(this.workflowsBaseUrl, auth);\n }\n\n credentials(apiKey: string): CredentialsApi;\n credentials(authProvider: AuthenticationProvider): CredentialsApi;\n credentials(auth: string | AuthenticationProvider): CredentialsApi {\n return new CredentialsApi(this.baseUrl, auth);\n }\n\n features(apiKey: string): FeaturesApi;\n features(authProvider: AuthenticationProvider): FeaturesApi;\n features(auth: string | AuthenticationProvider): FeaturesApi {\n return new FeaturesApi(this.baseUrl, auth);\n }\n\n triggers(apiKey: string): TriggersApi;\n triggers(authProvider: AuthenticationProvider): TriggersApi;\n triggers(auth: string | AuthenticationProvider): TriggersApi {\n return new TriggersApi(this.baseUrl, auth);\n }\n\n servicePrices(apiKey: string): ServicePricesApi;\n servicePrices(authProvider: AuthenticationProvider): ServicePricesApi;\n servicePrices(auth: string | AuthenticationProvider): ServicePricesApi {\n return new ServicePricesApi(this.baseUrl, auth);\n }\n\n sessions(apiKey: string): SessionsApi;\n sessions(authProvider: AuthenticationProvider): SessionsApi;\n sessions(auth: string | AuthenticationProvider): SessionsApi {\n return new SessionsApi(this.baseUrl, auth);\n }\n\n missions(apiKey: string): MissionsApi;\n missions(authProvider: AuthenticationProvider): MissionsApi;\n missions(auth: string | AuthenticationProvider): MissionsApi {\n return new MissionsApi(this.baseUrl, auth);\n }\n\n billing(apiKey: string): BillingClient;\n billing(authProvider: AuthenticationProvider): BillingClient;\n billing(auth: string | AuthenticationProvider): BillingClient {\n return new BillingClient(this.billingBaseUrl, auth);\n }\n\n values(apiKey: string): ValuesApi;\n values(authProvider: AuthenticationProvider): ValuesApi;\n values(auth: string | AuthenticationProvider): ValuesApi {\n return new ValuesApi(this.baseUrl, auth);\n }\n}\n","import { AuthenticationProvider } from './authentication-provider';\n\nexport class BearerTokenAuthenticationProvider implements AuthenticationProvider {\n constructor(private readonly token: string) {}\n\n applyHeaders(headers: Headers): void {\n headers.set('Authorization', `Bearer ${this.token}`);\n }\n\n getCredentials(): string {\n return this.token;\n }\n}\n"],"names":["ApiException","statusCode","body","__publicField","ApiKeyAuthenticationProvider","apiKey","headers","HttpApi","baseUrl","page","size","path","params","url","key","value","response","text","ProjectsApi","auth","billingBaseUrl","keyword","p","s","projectId","request","method","AgentsApi","extraParams","agentId","synthesizerName","revisionId","prompt","sessionId","KnowledgeBaseDocumentsApi","knowledgeBaseId","documentId","KnowledgeBasesApi","id","WorkflowExecutionsApi","workflowId","executionId","WorkflowsApi","workflow","CredentialsApi","provider","code","state","scope","credentialsId","FeatureTemplatesApi","templateId","template","configuration","FeaturesApi","TriggerExecutionsApi","triggerId","execution","TriggersApi","trigger","ServicePricesApi","servicePrice","SessionsApi","status","userId","name","MissionsApi","missionId","mission","instruction","BillingClient","owner","customer","credits","services","referenceId","dateFrom","dateTo","query","ValuesApi","category","PersonaSdk","workflowsBaseUrl","BearerTokenAuthenticationProvider","token"],"mappings":"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"}
1
+ {"version":3,"file":"bundle.es.js","sources":["../src/exceptions.ts","../src/auth/api-key-auth.ts","../src/http-api.ts","../src/projects/projects-api.ts","../src/agents/agents-api.ts","../src/knowledges/knowledge-base-documents-api.ts","../src/knowledges/knowledge-bases-api.ts","../src/workflows/workflow-executions-api.ts","../src/workflows/workflows-api.ts","../src/credentials/credentials-api.ts","../src/features/feature-templates-api.ts","../src/features/features-api.ts","../src/triggers/trigger-executions-api.ts","../src/triggers/triggers-api.ts","../src/service-prices/service-prices-api.ts","../src/sessions/sessions-api.ts","../src/missions/missions-api.ts","../src/billing/billing-client.ts","../src/values/values-api.ts","../src/persona-sdk.ts","../src/auth/bearer-token-auth.ts"],"sourcesContent":["export class ApiException extends Error {\n public readonly statusCode: number;\n public readonly body: string;\n\n constructor(statusCode: number, body: string) {\n super(`API Error: ${statusCode} - ${body}`);\n this.statusCode = statusCode;\n this.body = body;\n }\n}\n","import { AuthenticationProvider } from './authentication-provider';\n\nexport class ApiKeyAuthenticationProvider implements AuthenticationProvider {\n constructor(private readonly apiKey: string) {}\n\n applyHeaders(headers: Headers): void {\n headers.set('x-persona-apikey', this.apiKey);\n }\n\n getCredentials(): string {\n return this.apiKey;\n }\n}\n","import { ApiException } from './exceptions';\nimport { AuthenticationProvider } from './auth/authentication-provider';\nimport { ApiKeyAuthenticationProvider } from './auth/api-key-auth';\n\nexport abstract class HttpApi {\n private readonly baseUrl: string;\n private readonly authProvider: AuthenticationProvider;\n\n constructor(baseUrl: string, apiKey: string | AuthenticationProvider) {\n this.baseUrl = baseUrl;\n this.authProvider = typeof apiKey === 'string' ? new ApiKeyAuthenticationProvider(apiKey) : apiKey;\n }\n\n protected getBaseUrl(): string {\n return this.baseUrl;\n }\n\n protected getAuthProvider(): AuthenticationProvider {\n return this.authProvider;\n }\n\n protected normalizePageParams(page?: number, size?: number): { page: number; size: number } {\n return {\n page: page === undefined || page < 1 ? 1 : page,\n size: size === undefined || size < 1 ? 20 : size,\n };\n }\n\n private buildHeaders(): Headers {\n const headers = new Headers();\n headers.set('Content-Type', 'application/json');\n this.authProvider.applyHeaders(headers);\n return headers;\n }\n\n private buildUrl(path: string, params?: Record<string, unknown>): string {\n const url = new URL(this.baseUrl + path);\n if (params) {\n Object.entries(params).forEach(([key, value]) => {\n if (value !== null && value !== undefined) {\n url.searchParams.set(key, String(value));\n }\n });\n }\n return url.toString();\n }\n\n private async handleResponse<T>(response: Response): Promise<T> {\n if (!response.ok) {\n const body = await response.text();\n throw new ApiException(response.status, body);\n }\n const text = await response.text();\n return text ? JSON.parse(text) : (undefined as T);\n }\n\n protected async httpGet<T>(path: string, params?: Record<string, unknown>): Promise<T> {\n const response = await fetch(this.buildUrl(path, params), {\n method: 'GET',\n headers: this.buildHeaders(),\n });\n return this.handleResponse<T>(response);\n }\n\n protected async httpPost<T>(path: string, body?: unknown, params?: Record<string, unknown>): Promise<T> {\n const response = await fetch(this.buildUrl(path, params), {\n method: 'POST',\n headers: this.buildHeaders(),\n body: body ? JSON.stringify(body) : undefined,\n });\n return this.handleResponse<T>(response);\n }\n\n protected async httpPut<T>(path: string, body: unknown): Promise<T> {\n const response = await fetch(this.baseUrl + path, {\n method: 'PUT',\n headers: this.buildHeaders(),\n body: JSON.stringify(body),\n });\n return this.handleResponse<T>(response);\n }\n\n protected async httpPatch<T>(path: string, body: unknown): Promise<T> {\n const response = await fetch(this.baseUrl + path, {\n method: 'PATCH',\n headers: this.buildHeaders(),\n body: JSON.stringify(body),\n });\n return this.handleResponse<T>(response);\n }\n\n protected async httpDelete(path: string): Promise<void> {\n const response = await fetch(this.baseUrl + path, {\n method: 'DELETE',\n headers: this.buildHeaders(),\n });\n if (!response.ok) {\n const body = await response.text();\n throw new ApiException(response.status, body);\n }\n }\n}\n","import { HttpApi } from '../http-api';\nimport { ApiException } from '../exceptions';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n Project,\n ProjectCreateRequest,\n ProjectUpdateRequest,\n ProjectDuplicateRequest,\n ProjectSubscription,\n ChangeProjectSubscriptionPlanRequest,\n AddProjectSubscriptionCreditsRequest,\n SetProjectSubscriptionInfiniteCreditsRequest,\n} from './types';\n\nexport class ProjectsApi extends HttpApi {\n private readonly billingBaseUrl: string;\n\n constructor(baseUrl: string, auth: string | AuthenticationProvider, billingBaseUrl?: string) {\n super(baseUrl, auth);\n this.billingBaseUrl = (billingBaseUrl || baseUrl).replace(/\\/$/, '');\n }\n\n async list(keyword: string | null, page: number, size: number): Promise<Paginated<Project>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<Project>>('/projects', params);\n }\n\n async get(projectId: string): Promise<Project> {\n return this.httpGet<Project>('/projects/' + projectId);\n }\n\n async getMine(): Promise<Project> {\n return this.httpGet<Project>('/projects/mine');\n }\n\n async create(request: ProjectCreateRequest): Promise<Project> {\n return this.httpPost<Project>('/projects', request);\n }\n\n async update(request: ProjectUpdateRequest): Promise<Project> {\n return this.httpPut<Project>('/projects/' + request.projectId, request);\n }\n\n async remove(projectId: string): Promise<void> {\n await this.httpDelete('/projects/' + projectId);\n }\n\n async duplicate(projectId: string, request: ProjectDuplicateRequest): Promise<Project> {\n return this.httpPost<Project>('/projects/' + projectId + '/actions/duplicate', request);\n }\n\n async getSubscription(projectId: string): Promise<ProjectSubscription> {\n return this.billingRequest<ProjectSubscription>('/projects/' + projectId + '/subscription', 'GET');\n }\n\n async changeSubscriptionPlan(projectId: string, request: ChangeProjectSubscriptionPlanRequest): Promise<ProjectSubscription> {\n return this.billingRequest<ProjectSubscription>('/projects/' + projectId + '/subscription/actions/change-plan', 'POST', request);\n }\n\n async addSubscriptionCredits(projectId: string, request: AddProjectSubscriptionCreditsRequest): Promise<ProjectSubscription> {\n return this.billingRequest<ProjectSubscription>('/projects/' + projectId + '/subscription/actions/add-credits', 'POST', request);\n }\n\n async setInfiniteCredits(projectId: string, request: SetProjectSubscriptionInfiniteCreditsRequest): Promise<ProjectSubscription> {\n return this.billingRequest<ProjectSubscription>('/projects/' + projectId + '/subscription/actions/set-infinite-credits', 'POST', request);\n }\n\n private async billingRequest<T>(path: string, method: string, body?: unknown): Promise<T> {\n const headers = new Headers();\n headers.set('Content-Type', 'application/json');\n this.getAuthProvider().applyHeaders(headers);\n\n const response = await fetch(this.billingBaseUrl + path, {\n method,\n headers,\n body: body ? JSON.stringify(body) : undefined,\n });\n\n if (!response.ok) {\n const text = await response.text();\n throw new ApiException(response.status, text);\n }\n\n const text = await response.text();\n return text ? JSON.parse(text) : (undefined as T);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n Agent,\n AgentCreateRequest,\n AgentUpdateRequest,\n SynthesizerVoice,\n Revision,\n} from './types';\n\nexport class AgentsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<Agent>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<Agent>>('/agents', params);\n }\n\n async get(agentId: string): Promise<Agent> {\n return this.httpGet<Agent>('/agents/' + agentId);\n }\n\n async create(request: AgentCreateRequest): Promise<Agent> {\n return this.httpPost<Agent>('/agents', request);\n }\n\n async update(request: AgentUpdateRequest): Promise<Agent> {\n return this.httpPut<Agent>('/agents/' + request.id, request);\n }\n\n async remove(agentId: string): Promise<void> {\n await this.httpDelete('/agents/' + agentId);\n }\n\n async getSynthesizerSupportedVoices(synthesizerName: string): Promise<SynthesizerVoice[]> {\n return this.httpGet<SynthesizerVoice[]>('/values/synthesizers/' + synthesizerName + '/voices');\n }\n\n async listRevisions(agentId: string): Promise<Revision[]> {\n return this.httpGet<Revision[]>('/agents/' + agentId + '/revisions');\n }\n\n async getRevision(agentId: string, revisionId: string): Promise<Revision> {\n return this.httpGet<Revision>('/agents/' + agentId + '/revisions/' + revisionId);\n }\n\n async rollback(agentId: string, revisionId: string): Promise<Agent> {\n return this.httpPost<Agent>('/agents/' + agentId + '/revisions/' + revisionId + '/rollback', {});\n }\n\n async generateSystemInstructions(prompt: string, sessionId?: string): Promise<string> {\n const body: Record<string, unknown> = { prompt };\n if (sessionId) body.sessionId = sessionId;\n const result = await this.httpPost<{ instructions: string }>('/agents/system-instructions', body);\n return result.instructions;\n }\n\n async getArchitect(): Promise<Agent> {\n return this.httpGet<Agent>('/agents/architect');\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n KnowledgeBaseDocument,\n KnowledgeBaseDocumentUploadRequest,\n} from './types';\n\nexport class KnowledgeBaseDocumentsApi extends HttpApi {\n private readonly knowledgeBaseId: string;\n\n constructor(baseUrl: string, auth: string | AuthenticationProvider, knowledgeBaseId: string) {\n super(baseUrl, auth);\n this.knowledgeBaseId = knowledgeBaseId;\n }\n\n async list(keyword?: string | null, page?: number, size?: number): Promise<Paginated<KnowledgeBaseDocument>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<KnowledgeBaseDocument>>('/knowledge-bases/' + this.knowledgeBaseId + '/documents', params);\n }\n\n async upload(request: KnowledgeBaseDocumentUploadRequest): Promise<KnowledgeBaseDocument> {\n return this.httpPost<KnowledgeBaseDocument>('/knowledge-bases/' + this.knowledgeBaseId + '/documents', request);\n }\n\n async get(documentId: string): Promise<KnowledgeBaseDocument> {\n return this.httpGet<KnowledgeBaseDocument>('/knowledge-bases/' + this.knowledgeBaseId + '/documents/' + documentId);\n }\n\n async reprocess(documentId: string): Promise<KnowledgeBaseDocument> {\n return this.httpPost<KnowledgeBaseDocument>('/knowledge-bases/' + this.knowledgeBaseId + '/documents', { document_id: documentId });\n }\n\n async remove(documentId: string): Promise<void> {\n await this.httpDelete('/knowledge-bases/' + this.knowledgeBaseId + '/documents/' + documentId);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n KnowledgeBase,\n KnowledgeBaseCreateRequest,\n KnowledgeBaseUpdateRequest,\n ChunkResult,\n SearchChunksRequest,\n} from './types';\nimport { KnowledgeBaseDocumentsApi } from './knowledge-base-documents-api';\n\nexport class KnowledgeBasesApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<KnowledgeBase>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<KnowledgeBase>>('/knowledge-bases', params);\n }\n\n async get(id: string): Promise<KnowledgeBase> {\n return this.httpGet<KnowledgeBase>('/knowledge-bases/' + id);\n }\n\n async create(request: KnowledgeBaseCreateRequest): Promise<KnowledgeBase> {\n return this.httpPost<KnowledgeBase>('/knowledge-bases', request);\n }\n\n async update(request: KnowledgeBaseUpdateRequest): Promise<KnowledgeBase> {\n return this.httpPut<KnowledgeBase>('/knowledge-bases/' + request.id, request);\n }\n\n async remove(id: string): Promise<void> {\n await this.httpDelete('/knowledge-bases/' + id);\n }\n\n documents(knowledgeBaseId: string): KnowledgeBaseDocumentsApi {\n return new KnowledgeBaseDocumentsApi(this.getBaseUrl(), this.getAuthProvider(), knowledgeBaseId);\n }\n\n async searchChunks(id: string, request: SearchChunksRequest): Promise<ChunkResult[]> {\n return this.httpPost<ChunkResult[]>('/knowledge-bases/' + id + '/search', request);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { Execution, ExecuteRequest } from './types';\n\nexport class WorkflowExecutionsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(workflowId: string, page?: number, size?: number): Promise<Paginated<Execution>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n return this.httpGet<Paginated<Execution>>('/workflows/' + workflowId + '/executions', params);\n }\n\n async get(workflowId: string, executionId: string): Promise<Execution> {\n return this.httpGet<Execution>('/workflows/' + workflowId + '/executions/' + executionId);\n }\n\n async run(workflowId: string, request: ExecuteRequest): Promise<Execution> {\n return this.httpPost<Execution>('/workflows/' + workflowId + '/executions', request);\n }\n\n async queue(workflowId: string, request: ExecuteRequest): Promise<Execution> {\n return this.httpPost<Execution>('/workflows/' + workflowId + '/executions/queue', request);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { Revision } from '../revisions/types';\nimport { Workflow } from './types';\nimport { WorkflowExecutionsApi } from './workflow-executions-api';\n\nexport class WorkflowsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<Workflow>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<Workflow>>('/workflows', params);\n }\n\n async create(workflow: Workflow): Promise<Workflow> {\n return this.httpPost<Workflow>('/workflows', workflow);\n }\n\n async update(workflowId: string, workflow: Workflow): Promise<Workflow> {\n workflow.id = workflowId;\n return this.httpPut<Workflow>('/workflows/' + workflowId, workflow);\n }\n\n async remove(workflowId: string): Promise<void> {\n await this.httpDelete('/workflows/' + workflowId);\n }\n\n async get(workflowId: string): Promise<Workflow> {\n return this.httpGet<Workflow>('/workflows/' + workflowId);\n }\n\n executions(): WorkflowExecutionsApi {\n return new WorkflowExecutionsApi(this.getBaseUrl(), this.getAuthProvider());\n }\n\n async listRevisions(workflowId: string): Promise<Revision[]> {\n return this.httpGet<Revision[]>('/workflows/' + workflowId + '/revisions');\n }\n\n async getRevision(workflowId: string, revisionId: string): Promise<Revision> {\n return this.httpGet<Revision>('/workflows/' + workflowId + '/revisions/' + revisionId);\n }\n\n async rollback(workflowId: string, revisionId: string): Promise<Workflow> {\n return this.httpPost<Workflow>('/workflows/' + workflowId + '/revisions/' + revisionId + '/rollback', {});\n }\n}\n","import { HttpApi } from '../http-api';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n Credentials,\n AuthorizeRequest,\n AuthorizeResponse,\n OAuth2CallbackResponse,\n} from './types';\n\nexport class CredentialsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async authorize(provider: string, request: AuthorizeRequest): Promise<AuthorizeResponse> {\n return this.httpPost<AuthorizeResponse>('/credentials/' + provider + '/authorize', request);\n }\n\n async handleOAuth2Callback(provider: string, code: string, state: string, scope?: string): Promise<OAuth2CallbackResponse> {\n const params: Record<string, unknown> = { code, state };\n if (scope) params.scope = scope;\n return this.httpGet<OAuth2CallbackResponse>('/credentials/' + provider + '/oauth2/callback', params);\n }\n\n async list(): Promise<Credentials[]> {\n return this.httpGet<Credentials[]>('/credentials');\n }\n\n async getByProvider(provider: string): Promise<Credentials[]> {\n return this.httpGet<Credentials[]>('/credentials/' + provider);\n }\n\n async getById(credentialsId: string): Promise<Credentials> {\n return this.httpGet<Credentials>('/credentials/all/' + credentialsId);\n }\n\n async remove(credentialsId: string): Promise<void> {\n await this.httpDelete('/credentials/all/' + credentialsId);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { FeatureTemplate, McpToolsResponse } from './types';\nimport { McpServerConfiguration } from '../agents/types';\n\nexport class FeatureTemplatesApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<FeatureTemplate>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<FeatureTemplate>>('/features/templates', params);\n }\n\n async get(templateId: string): Promise<FeatureTemplate> {\n return this.httpGet<FeatureTemplate>('/features/templates/' + templateId);\n }\n\n async create(template: FeatureTemplate): Promise<FeatureTemplate> {\n return this.httpPost<FeatureTemplate>('/features/templates', template);\n }\n\n async update(templateId: string, template: FeatureTemplate): Promise<FeatureTemplate> {\n return this.httpPut<FeatureTemplate>('/features/templates/' + templateId, template);\n }\n\n async patch(templateId: string, template: FeatureTemplate): Promise<FeatureTemplate> {\n return this.httpPatch<FeatureTemplate>('/features/templates/' + templateId, template);\n }\n\n async remove(templateId: string): Promise<void> {\n await this.httpDelete('/features/templates/' + templateId);\n }\n\n async getMcpAvailableTools(configuration: McpServerConfiguration, credentialsId?: string): Promise<McpToolsResponse> {\n const params = credentialsId ? { credentialsId } : undefined;\n return this.httpPost<McpToolsResponse>('/features/templates/mcp/available-tools', configuration, params);\n }\n}\n","import { AuthenticationProvider } from '../auth/authentication-provider';\nimport { FeatureTemplatesApi } from './feature-templates-api';\n\nexport class FeaturesApi {\n private readonly baseUrl: string;\n private readonly auth: string | AuthenticationProvider;\n\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n this.baseUrl = baseUrl;\n this.auth = auth;\n }\n\n templates(): FeatureTemplatesApi {\n return new FeatureTemplatesApi(this.baseUrl, this.auth);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { TriggerExecutionResult } from './types';\n\nexport class TriggerExecutionsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(triggerId: string, page?: number, size?: number): Promise<Paginated<TriggerExecutionResult>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n return this.httpGet<Paginated<TriggerExecutionResult>>('/triggers/' + triggerId + '/executions', params);\n }\n\n async execute(triggerId: string, execution: TriggerExecutionResult): Promise<TriggerExecutionResult> {\n return this.httpPost<TriggerExecutionResult>('/triggers/' + triggerId + '/executions', execution);\n }\n\n async get(executionId: string): Promise<TriggerExecutionResult> {\n return this.httpGet<TriggerExecutionResult>('/triggers/executions/' + executionId);\n }\n\n async remove(executionId: string): Promise<void> {\n await this.httpDelete('/triggers/executions/' + executionId);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { Trigger } from './types';\nimport { TriggerExecutionsApi } from './trigger-executions-api';\n\nexport class TriggersApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<Trigger>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<Trigger>>('/triggers', params);\n }\n\n async create(trigger: Trigger): Promise<Trigger> {\n return this.httpPost<Trigger>('/triggers', trigger);\n }\n\n async update(triggerId: string, trigger: Trigger): Promise<Trigger> {\n return this.httpPut<Trigger>('/triggers/' + triggerId, trigger);\n }\n\n async remove(triggerId: string): Promise<void> {\n await this.httpDelete('/triggers/' + triggerId);\n }\n\n async get(triggerId: string): Promise<Trigger> {\n return this.httpGet<Trigger>('/triggers/' + triggerId);\n }\n\n executions(): TriggerExecutionsApi {\n return new TriggerExecutionsApi(this.getBaseUrl(), this.getAuthProvider());\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { ServicePrice } from './types';\n\nexport class ServicePricesApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, extraParams?: Record<string, string>): Promise<Paginated<ServicePrice>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s, ...extraParams };\n if (keyword) params.keyword = keyword;\n return this.httpGet<Paginated<ServicePrice>>('/service-prices', params);\n }\n\n async get(id: string): Promise<ServicePrice> {\n return this.httpGet<ServicePrice>('/service-prices/' + id);\n }\n\n async create(servicePrice: ServicePrice): Promise<ServicePrice> {\n return this.httpPost<ServicePrice>('/service-prices', servicePrice);\n }\n\n async update(id: string, servicePrice: ServicePrice): Promise<ServicePrice> {\n return this.httpPut<ServicePrice>('/service-prices/' + id, servicePrice);\n }\n\n async remove(id: string): Promise<void> {\n await this.httpDelete('/service-prices/' + id);\n }\n}\n","import { HttpApi } from '../http-api';\nimport { Paginated } from '../paginated';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport {\n Session,\n GenerationRequest,\n GenerationResponse,\n Message,\n CommittedUsage,\n} from './types';\n\nexport class SessionsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(\n keyword?: string | null,\n status?: string | null,\n agentId?: string | null,\n userId?: string | null,\n page?: number,\n size?: number,\n ): Promise<Paginated<Session>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n if (keyword) params.keyword = keyword;\n if (status) params.status = status;\n if (agentId) params.agentId = agentId;\n if (userId) params.userId = userId;\n return this.httpGet<Paginated<Session>>('/sessions', params);\n }\n\n async get(sessionId: string): Promise<Session> {\n return this.httpGet<Session>('/sessions/' + sessionId);\n }\n\n async getUsage(sessionId: string): Promise<CommittedUsage[]> {\n return this.httpGet<CommittedUsage[]>('/sessions/' + sessionId + '/usage');\n }\n\n async generateMessage(code: string, request: GenerationRequest): Promise<GenerationResponse> {\n return this.httpPost<GenerationResponse>('/sessions/' + code + '/messages', request);\n }\n\n async findMessages(code: string, page?: number, size?: number): Promise<Paginated<Message>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n return this.httpGet<Paginated<Message>>('/sessions/' + code + '/messages', params);\n }\n\n async remove(code: string): Promise<void> {\n await this.httpDelete('/sessions/' + code);\n }\n\n async rename(sessionId: string, name: string): Promise<Session> {\n return this.httpPut<Session>('/sessions/' + sessionId + '/name', { name });\n }\n}\n","import { HttpApi } from '../http-api';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\nimport { Paginated } from '../paginated';\nimport { Mission } from './types';\n\nexport class MissionsApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async list(keyword?: string | null, page?: number, size?: number, status?: string | null): Promise<Paginated<Mission>> {\n const { page: p, size: s } = this.normalizePageParams(page, size);\n const params: Record<string, unknown> = { page: p, size: s };\n if (keyword) params.keyword = keyword;\n if (status) params.status = status;\n return this.httpGet<Paginated<Mission>>('/missions', params);\n }\n\n async get(missionId: string): Promise<Mission> {\n return this.httpGet<Mission>('/missions/' + missionId);\n }\n\n async create(mission: Mission): Promise<Mission> {\n return this.httpPost<Mission>('/missions', mission);\n }\n\n async update(missionId: string, mission: Mission): Promise<Mission> {\n return this.httpPut<Mission>('/missions/' + missionId, mission);\n }\n\n async remove(missionId: string): Promise<void> {\n await this.httpDelete('/missions/' + missionId);\n }\n\n async generate(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/generate');\n }\n\n async execute(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/execute');\n }\n\n async retry(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/retry');\n }\n\n async replan(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/replan');\n }\n\n async sendInstruction(missionId: string, instruction: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/instructions', { instruction });\n }\n\n async stop(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/stop');\n }\n\n async resume(missionId: string): Promise<Mission> {\n return this.httpPost<Mission>('/missions/' + missionId + '/continue');\n }\n}\n","import { AuthenticationProvider } from '../auth/authentication-provider';\nimport { ApiException } from '../exceptions';\nimport {\n Customer,\n Subscription,\n Invoice,\n CreateCustomerRequest,\n UpdateCustomerRequest,\n CreateSubscriptionRequest,\n UpgradeSubscriptionRequest,\n DowngradeSubscriptionRequest,\n MentorizeSubscriptionRequest,\n} from './types';\n\nexport class BillingClient {\n private readonly baseUrl: string;\n private readonly authProvider: AuthenticationProvider | string | null;\n\n constructor(baseUrl?: string, auth?: string | AuthenticationProvider | null) {\n this.baseUrl = (baseUrl || 'https://persona.applica.guru/billing').replace(/\\/$/, '');\n this.authProvider = auth ?? null;\n }\n\n private buildHeaders(): Headers {\n const headers = new Headers();\n headers.set('Content-Type', 'application/json');\n if (this.authProvider) {\n if (typeof this.authProvider === 'string') {\n headers.set('x-persona-apikey', this.authProvider);\n } else {\n this.authProvider.applyHeaders(headers);\n }\n }\n return headers;\n }\n\n private async request<T>(path: string, method: string, body?: unknown): Promise<T> {\n const response = await fetch(this.baseUrl + path, {\n method,\n headers: this.buildHeaders(),\n body: body ? JSON.stringify(body) : undefined,\n });\n if (!response.ok) {\n const text = await response.text();\n throw new ApiException(response.status, text);\n }\n const text = await response.text();\n return text ? JSON.parse(text) : (undefined as T);\n }\n\n async createCustomer(request: CreateCustomerRequest): Promise<Customer> {\n return this.request<Customer>('/customers', 'POST', request);\n }\n\n async updateCustomer(owner: string, request: UpdateCustomerRequest): Promise<Customer> {\n return this.request<Customer>('/customers/' + owner, 'PUT', request);\n }\n\n async getCustomer(owner: string): Promise<Customer> {\n return this.request<Customer>('/customers/' + owner, 'GET');\n }\n\n async saveCustomer(customer: Customer): Promise<Customer> {\n return this.request<Customer>('/customers', 'POST', customer);\n }\n\n async deleteCustomer(owner: string): Promise<void> {\n await this.request<void>('/customers/' + owner, 'DELETE');\n }\n\n async createSubscription(request: CreateSubscriptionRequest): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + request.owner + '/subscription', 'POST', request);\n }\n\n async getSubscription(owner: string): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription', 'GET');\n }\n\n async getProjectSubscription(projectId: string): Promise<Subscription> {\n return this.request<Subscription>('/projects/' + projectId + '/subscription', 'GET');\n }\n\n async changeProjectSubscriptionPlan(projectId: string, request: { toPlanType: string }): Promise<Subscription> {\n return this.request<Subscription>('/projects/' + projectId + '/subscription/actions/change-plan', 'POST', request);\n }\n\n async addProjectSubscriptionCredits(projectId: string, request: { credits: number }): Promise<Subscription> {\n return this.request<Subscription>('/projects/' + projectId + '/subscription/actions/add-credits', 'POST', request);\n }\n\n async beginUpgrade(owner: string, request: UpgradeSubscriptionRequest): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription/actions/upgrade', 'POST', request);\n }\n\n async downgrade(owner: string, request: DowngradeSubscriptionRequest): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription/actions/downgrade', 'POST', request);\n }\n\n async mentorize(owner: string, request: MentorizeSubscriptionRequest): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription/actions/mentorize', 'POST', request);\n }\n\n async addCredits(owner: string, credits: number): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription/credits', 'POST', { credits });\n }\n\n async useCredits(owner: string, credits: number, services: string[], referenceId?: string): Promise<Subscription> {\n const body: Record<string, unknown> = { credits, services };\n if (referenceId) body.referenceId = referenceId;\n return this.request<Subscription>('/customers/' + owner + '/subscription/credits', 'DELETE', body);\n }\n\n async getCredits(owner: string): Promise<number> {\n try {\n const result = await this.request<{ credits?: number }>('/customers/' + owner + '/subscription/credits', 'GET');\n return result.credits ?? 0;\n } catch {\n return 0;\n }\n }\n\n async isValid(owner: string): Promise<boolean> {\n try {\n const result = await this.request<{ valid?: boolean }>('/customers/' + owner + '/subscription/valid', 'GET');\n return result.valid ?? false;\n } catch {\n return false;\n }\n }\n\n async listInvoices(owner: string, dateFrom?: string, dateTo?: string): Promise<Invoice[]> {\n const params: string[] = [];\n if (dateFrom) params.push('date_from=' + dateFrom);\n if (dateTo) params.push('date_to=' + dateTo);\n const query = params.length > 0 ? '?' + params.join('&') : '';\n return this.request<Invoice[]>('/customers/' + owner + '/invoices' + query, 'GET');\n }\n\n async cancelSubscription(owner: string): Promise<Subscription> {\n return this.request<Subscription>('/customers/' + owner + '/subscription/actions/cancel', 'POST', {});\n }\n}\n","import { HttpApi } from '../http-api';\nimport { AuthenticationProvider } from '../auth/authentication-provider';\n\nexport class ValuesApi extends HttpApi {\n constructor(baseUrl: string, auth: string | AuthenticationProvider) {\n super(baseUrl, auth);\n }\n\n async get(category: string): Promise<Record<string, unknown>[]> {\n return this.httpGet<Record<string, unknown>[]>('/values/' + category);\n }\n\n async getLanguageCodes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/language-codes');\n }\n\n async getModelNames(): Promise<string[]> {\n return this.httpGet<string[]>('/values/model-names');\n }\n\n async getModelProviders(): Promise<string[]> {\n return this.httpGet<string[]>('/values/model-providers');\n }\n\n async getKnowledgeTypes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/knowledge-types');\n }\n\n async getCollaborationModes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/collaboration-modes');\n }\n\n async getTranscriberNames(): Promise<string[]> {\n return this.httpGet<string[]>('/values/transcriber-names');\n }\n\n async getSynthesizerNames(): Promise<string[]> {\n return this.httpGet<string[]>('/values/synthesizer-names');\n }\n\n async getSynthesizerVoices(synthesizerName: string): Promise<string[]> {\n return this.httpGet<string[]>('/values/synthesizers/' + synthesizerName + '/voices');\n }\n\n async getStmTypes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/stm-types');\n }\n\n async getDocumentExtractors(): Promise<string[]> {\n return this.httpGet<string[]>('/values/document-extractors');\n }\n\n async getEmbeddingModels(): Promise<string[]> {\n return this.httpGet<string[]>('/values/embedding-models');\n }\n\n async getQualityOptions(): Promise<string[]> {\n return this.httpGet<string[]>('/values/quality');\n }\n\n async getChunkSizeOptions(): Promise<string[]> {\n return this.httpGet<string[]>('/values/chunk-size');\n }\n\n async getFeatureTypes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/feature-types');\n }\n\n async getRoles(): Promise<string[]> {\n return this.httpGet<string[]>('/values/roles');\n }\n\n async getServiceUnits(): Promise<string[]> {\n return this.httpGet<string[]>('/values/service-units');\n }\n\n async getTriggerSourceTypes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/trigger-source-types');\n }\n\n async getTriggerDestinationTypes(): Promise<string[]> {\n return this.httpGet<string[]>('/values/trigger-destination-types');\n }\n}\n","import { AuthenticationProvider } from './auth/authentication-provider';\nimport { ProjectsApi } from './projects/projects-api';\nimport { AgentsApi } from './agents/agents-api';\nimport { KnowledgeBasesApi } from './knowledges/knowledge-bases-api';\nimport { WorkflowsApi } from './workflows/workflows-api';\nimport { CredentialsApi } from './credentials/credentials-api';\nimport { FeaturesApi } from './features/features-api';\nimport { TriggersApi } from './triggers/triggers-api';\nimport { ServicePricesApi } from './service-prices/service-prices-api';\nimport { SessionsApi } from './sessions/sessions-api';\nimport { MissionsApi } from './missions/missions-api';\nimport { BillingClient } from './billing/billing-client';\nimport { ValuesApi } from './values/values-api';\n\nexport class PersonaSdk {\n private readonly baseUrl: string;\n private readonly workflowsBaseUrl: string;\n private readonly billingBaseUrl: string;\n\n constructor(baseUrl: string, workflowsBaseUrl: string, billingBaseUrl?: string) {\n this.baseUrl = baseUrl;\n this.workflowsBaseUrl = workflowsBaseUrl;\n this.billingBaseUrl = billingBaseUrl || 'https://persona.applica.guru/billing';\n }\n\n projects(apiKey: string): ProjectsApi;\n projects(authProvider: AuthenticationProvider): ProjectsApi;\n projects(auth: string | AuthenticationProvider): ProjectsApi {\n return new ProjectsApi(this.baseUrl, auth, this.billingBaseUrl);\n }\n\n agents(apiKey: string): AgentsApi;\n agents(authProvider: AuthenticationProvider): AgentsApi;\n agents(auth: string | AuthenticationProvider): AgentsApi {\n return new AgentsApi(this.baseUrl, auth);\n }\n\n knowledgeBases(apiKey: string): KnowledgeBasesApi;\n knowledgeBases(authProvider: AuthenticationProvider): KnowledgeBasesApi;\n knowledgeBases(auth: string | AuthenticationProvider): KnowledgeBasesApi {\n return new KnowledgeBasesApi(this.baseUrl, auth);\n }\n\n workflows(apiKey: string): WorkflowsApi;\n workflows(authProvider: AuthenticationProvider): WorkflowsApi;\n workflows(auth: string | AuthenticationProvider): WorkflowsApi {\n return new WorkflowsApi(this.workflowsBaseUrl, auth);\n }\n\n credentials(apiKey: string): CredentialsApi;\n credentials(authProvider: AuthenticationProvider): CredentialsApi;\n credentials(auth: string | AuthenticationProvider): CredentialsApi {\n return new CredentialsApi(this.baseUrl, auth);\n }\n\n features(apiKey: string): FeaturesApi;\n features(authProvider: AuthenticationProvider): FeaturesApi;\n features(auth: string | AuthenticationProvider): FeaturesApi {\n return new FeaturesApi(this.baseUrl, auth);\n }\n\n triggers(apiKey: string): TriggersApi;\n triggers(authProvider: AuthenticationProvider): TriggersApi;\n triggers(auth: string | AuthenticationProvider): TriggersApi {\n return new TriggersApi(this.baseUrl, auth);\n }\n\n servicePrices(apiKey: string): ServicePricesApi;\n servicePrices(authProvider: AuthenticationProvider): ServicePricesApi;\n servicePrices(auth: string | AuthenticationProvider): ServicePricesApi {\n return new ServicePricesApi(this.baseUrl, auth);\n }\n\n sessions(apiKey: string): SessionsApi;\n sessions(authProvider: AuthenticationProvider): SessionsApi;\n sessions(auth: string | AuthenticationProvider): SessionsApi {\n return new SessionsApi(this.baseUrl, auth);\n }\n\n missions(apiKey: string): MissionsApi;\n missions(authProvider: AuthenticationProvider): MissionsApi;\n missions(auth: string | AuthenticationProvider): MissionsApi {\n return new MissionsApi(this.baseUrl, auth);\n }\n\n billing(apiKey: string): BillingClient;\n billing(authProvider: AuthenticationProvider): BillingClient;\n billing(auth: string | AuthenticationProvider): BillingClient {\n return new BillingClient(this.billingBaseUrl, auth);\n }\n\n values(apiKey: string): ValuesApi;\n values(authProvider: AuthenticationProvider): ValuesApi;\n values(auth: string | AuthenticationProvider): ValuesApi {\n return new ValuesApi(this.baseUrl, auth);\n }\n}\n","import { AuthenticationProvider } from './authentication-provider';\n\nexport class BearerTokenAuthenticationProvider implements AuthenticationProvider {\n constructor(private readonly token: string) {}\n\n applyHeaders(headers: Headers): void {\n headers.set('Authorization', `Bearer ${this.token}`);\n }\n\n getCredentials(): string {\n return this.token;\n }\n}\n"],"names":["ApiException","statusCode","body","__publicField","ApiKeyAuthenticationProvider","apiKey","headers","HttpApi","baseUrl","page","size","path","params","url","key","value","response","text","ProjectsApi","auth","billingBaseUrl","keyword","p","s","projectId","request","method","AgentsApi","extraParams","agentId","synthesizerName","revisionId","prompt","sessionId","KnowledgeBaseDocumentsApi","knowledgeBaseId","documentId","KnowledgeBasesApi","id","WorkflowExecutionsApi","workflowId","executionId","WorkflowsApi","workflow","CredentialsApi","provider","code","state","scope","credentialsId","FeatureTemplatesApi","templateId","template","configuration","FeaturesApi","TriggerExecutionsApi","triggerId","execution","TriggersApi","trigger","ServicePricesApi","servicePrice","SessionsApi","status","userId","name","MissionsApi","missionId","mission","instruction","BillingClient","owner","customer","credits","services","referenceId","dateFrom","dateTo","query","ValuesApi","category","PersonaSdk","workflowsBaseUrl","BearerTokenAuthenticationProvider","token"],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -805,6 +805,11 @@ export declare interface ProjectCreateRequest {
805
805
  tag?: string;
806
806
  }
807
807
 
808
+ export declare interface ProjectDuplicateRequest {
809
+ name: string;
810
+ tag?: string;
811
+ }
812
+
808
813
  export declare class ProjectsApi extends HttpApi {
809
814
  private readonly billingBaseUrl;
810
815
  constructor(baseUrl: string, auth: string | AuthenticationProvider, billingBaseUrl?: string);
@@ -814,6 +819,7 @@ export declare class ProjectsApi extends HttpApi {
814
819
  create(request: ProjectCreateRequest): Promise<Project>;
815
820
  update(request: ProjectUpdateRequest): Promise<Project>;
816
821
  remove(projectId: string): Promise<void>;
822
+ duplicate(projectId: string, request: ProjectDuplicateRequest): Promise<Project>;
817
823
  getSubscription(projectId: string): Promise<ProjectSubscription>;
818
824
  changeSubscriptionPlan(projectId: string, request: ChangeProjectSubscriptionPlanRequest): Promise<ProjectSubscription>;
819
825
  addSubscriptionCredits(projectId: string, request: AddProjectSubscriptionCreditsRequest): Promise<ProjectSubscription>;
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@applica-software-guru/persona-sdk",
3
3
  "description": "Official TypeScript SDK for the Persona API — manage agents, sessions, projects, knowledge bases, workflows, triggers and more.",
4
4
  "private": false,
5
- "version": "0.1.23",
5
+ "version": "0.1.24",
6
6
  "type": "module",
7
7
  "scripts": {
8
8
  "dev": "vite",
package/src/index.ts CHANGED
@@ -4,7 +4,7 @@ export type { Paginated } from './paginated';
4
4
  export { ApiKeyAuthenticationProvider, BearerTokenAuthenticationProvider } from './auth';
5
5
  export type { AuthenticationProvider } from './auth';
6
6
  export { ProjectsApi } from './projects/projects-api';
7
- export type { Project, ProjectCreateRequest, ProjectUpdateRequest, ProjectSubscription, ChangeProjectSubscriptionPlanRequest, AddProjectSubscriptionCreditsRequest } from './projects/types';
7
+ export type { Project, ProjectCreateRequest, ProjectUpdateRequest, ProjectDuplicateRequest, ProjectSubscription, ChangeProjectSubscriptionPlanRequest, AddProjectSubscriptionCreditsRequest } from './projects/types';
8
8
  export { AgentsApi } from './agents/agents-api';
9
9
  export type {
10
10
  Agent,
@@ -6,6 +6,7 @@ import {
6
6
  Project,
7
7
  ProjectCreateRequest,
8
8
  ProjectUpdateRequest,
9
+ ProjectDuplicateRequest,
9
10
  ProjectSubscription,
10
11
  ChangeProjectSubscriptionPlanRequest,
11
12
  AddProjectSubscriptionCreditsRequest,
@@ -47,6 +48,10 @@ export class ProjectsApi extends HttpApi {
47
48
  await this.httpDelete('/projects/' + projectId);
48
49
  }
49
50
 
51
+ async duplicate(projectId: string, request: ProjectDuplicateRequest): Promise<Project> {
52
+ return this.httpPost<Project>('/projects/' + projectId + '/actions/duplicate', request);
53
+ }
54
+
50
55
  async getSubscription(projectId: string): Promise<ProjectSubscription> {
51
56
  return this.billingRequest<ProjectSubscription>('/projects/' + projectId + '/subscription', 'GET');
52
57
  }
@@ -16,6 +16,11 @@ export interface ProjectUpdateRequest {
16
16
  tag?: string;
17
17
  }
18
18
 
19
+ export interface ProjectDuplicateRequest {
20
+ name: string;
21
+ tag?: string;
22
+ }
23
+
19
24
  export interface ProjectSubscription {
20
25
  id?: string;
21
26
  projectId?: string;