import{D as n}from"./browser-modular-DfWTWK1K.js";import"./feature-sockets-CFuglALU.js";let e=null;async function t(){return e||(e=await import("./browser-modular-DfWTWK1K.js").then(function(n){return n.n})),e}class a{constructor(e={}){this.analyzer=null,this.config={confidenceThreshold:e.confidenceThreshold??n,fallbackOnLowConfidence:e.fallbackOnLowConfidence??!0}}async initialize(){const n=await t();this.analyzer=n.createSemanticAnalyzer()}isInitialized(){return null!==this.analyzer}async transform(n,e,a){if(this.isInitialized()||await this.initialize(),e===a)return{output:n,usedSemantic:!1,confidence:1,sourceLang:e,targetLang:a};const i=await t();try{const t=i.translate(n,e,a);if(t!==n)return{output:t,usedSemantic:!0,confidence:.9,sourceLang:e,targetLang:a}}catch{}return{output:n,usedSemantic:!1,confidence:0,sourceLang:e,targetLang:a}}async parse(n,e){if(this.isInitialized()||await this.initialize(),!this.analyzer)return null;return this.analyzer.analyze(n,e).node??null}async render(n,e){return(await t()).render(n,e)}async parseToAST(n,e){if(this.isInitialized()||await this.initialize(),!this.analyzer)return null;const a=this.analyzer.analyze(n,e);if(a.confidence>=this.config.confidenceThreshold&&a.node){const n=await t();try{return n.buildAST(a.node).ast}catch(n){}}return null}async parseToASTWithDetails(n,e){if(this.isInitialized()||await this.initialize(),!this.analyzer)return{ast:null,usedDirectPath:!1,confidence:0,lang:e,fallbackText:null};const a=this.analyzer.analyze(n,e),i=await t();if(a.confidence>=this.config.confidenceThreshold&&a.node)try{const n=i.buildAST(a.node);return{ast:n.ast,usedDirectPath:!0,confidence:a.confidence,lang:e,fallbackText:null,warnings:n.warnings}}catch{}if(a.node&&this.config.fallbackOnLowConfidence){const n=i.render(a.node,"en");return{ast:null,usedDirectPath:!1,confidence:a.confidence,lang:e,fallbackText:n}}return{ast:null,usedDirectPath:!1,confidence:a.confidence,lang:e,fallbackText:null}}async getAllTranslations(n,e){const a=(await t()).getSupportedLanguages(),i={};for(const t of a)i[t]=await this.transform(n,e,t);return i}}export{a as SemanticGrammarBridge};
//# sourceMappingURL=bridge-qXDe7P1g.js.map
