import sdk from '@quantumdmn/sdk';
const { createClient, DmnEngine, ZitadelTokenProvider, FeelValue } = sdk;
const apiUrl = 'https://api.quantumdmn.com';
const authUrl = 'https://auth.quantumdmn.com';
const keyFile = 'path/to/service-user.json';
const projectId = 'YOUR_DMN_PROJECT_ID';
const zitadelProjectId = 'YOUR_ZITADEL_PROJECT_ID';
const definitionId = 'YOUR_DEFINITION_ID';
async function main() {
try {
const tokenProvider = new ZitadelTokenProvider(keyFile, authUrl, zitadelProjectId);
const client = createClient({
baseUrl: apiUrl,
tokenProvider: tokenProvider.getProvider(),
});
const engine = new DmnEngine(client, projectId);
const feelContext = {
"RequestedAmt": FeelValue.of(1000)
};
const result = await engine.evaluate(definitionId, feelContext);
console.log('Result:', JSON.stringify(result, null, 2));
} catch (error) {
console.error('Evaluation failed:', error);
}
}
main();