@axonflow/sdk 1.2.0 → 1.2.1

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.
Files changed (61) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +194 -9
  3. package/dist/cjs/client.d.ts +64 -40
  4. package/dist/cjs/client.d.ts.map +1 -1
  5. package/dist/cjs/client.js +279 -198
  6. package/dist/cjs/client.js.map +1 -1
  7. package/dist/cjs/errors.d.ts +51 -0
  8. package/dist/cjs/errors.d.ts.map +1 -0
  9. package/dist/cjs/errors.js +84 -0
  10. package/dist/cjs/errors.js.map +1 -0
  11. package/dist/cjs/index.d.ts +3 -2
  12. package/dist/cjs/index.d.ts.map +1 -1
  13. package/dist/cjs/index.js +10 -2
  14. package/dist/cjs/index.js.map +1 -1
  15. package/dist/cjs/interceptors/anthropic.d.ts +1 -1
  16. package/dist/cjs/interceptors/anthropic.d.ts.map +1 -1
  17. package/dist/cjs/interceptors/anthropic.js +6 -6
  18. package/dist/cjs/interceptors/anthropic.js.map +1 -1
  19. package/dist/cjs/interceptors/openai.d.ts +1 -1
  20. package/dist/cjs/interceptors/openai.d.ts.map +1 -1
  21. package/dist/cjs/interceptors/openai.js +5 -5
  22. package/dist/cjs/interceptors/openai.js.map +1 -1
  23. package/dist/cjs/types/config.d.ts +7 -1
  24. package/dist/cjs/types/config.d.ts.map +1 -1
  25. package/dist/cjs/types/gateway.d.ts +51 -114
  26. package/dist/cjs/types/gateway.d.ts.map +1 -1
  27. package/dist/cjs/types/gateway.js +2 -7
  28. package/dist/cjs/types/gateway.js.map +1 -1
  29. package/dist/cjs/utils/helpers.d.ts.map +1 -1
  30. package/dist/cjs/utils/helpers.js +3 -1
  31. package/dist/cjs/utils/helpers.js.map +1 -1
  32. package/dist/esm/client.d.ts +64 -40
  33. package/dist/esm/client.d.ts.map +1 -1
  34. package/dist/esm/client.js +279 -198
  35. package/dist/esm/client.js.map +1 -1
  36. package/dist/esm/errors.d.ts +51 -0
  37. package/dist/esm/errors.d.ts.map +1 -0
  38. package/dist/esm/errors.js +75 -0
  39. package/dist/esm/errors.js.map +1 -0
  40. package/dist/esm/index.d.ts +3 -2
  41. package/dist/esm/index.d.ts.map +1 -1
  42. package/dist/esm/index.js +3 -1
  43. package/dist/esm/index.js.map +1 -1
  44. package/dist/esm/interceptors/anthropic.d.ts +1 -1
  45. package/dist/esm/interceptors/anthropic.d.ts.map +1 -1
  46. package/dist/esm/interceptors/anthropic.js +6 -6
  47. package/dist/esm/interceptors/anthropic.js.map +1 -1
  48. package/dist/esm/interceptors/openai.d.ts +1 -1
  49. package/dist/esm/interceptors/openai.d.ts.map +1 -1
  50. package/dist/esm/interceptors/openai.js +5 -5
  51. package/dist/esm/interceptors/openai.js.map +1 -1
  52. package/dist/esm/types/config.d.ts +7 -1
  53. package/dist/esm/types/config.d.ts.map +1 -1
  54. package/dist/esm/types/gateway.d.ts +51 -114
  55. package/dist/esm/types/gateway.d.ts.map +1 -1
  56. package/dist/esm/types/gateway.js +2 -7
  57. package/dist/esm/types/gateway.js.map +1 -1
  58. package/dist/esm/utils/helpers.d.ts.map +1 -1
  59. package/dist/esm/utils/helpers.js +3 -1
  60. package/dist/esm/utils/helpers.js.map +1 -1
  61. package/package.json +21 -7
@@ -1 +1 @@
1
- {"version":3,"file":"gateway.d.ts","sourceRoot":"","sources":["../../../src/types/gateway.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAEvB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC;IAElB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAEnC;;OAEG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;IAEnB;;OAEG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAE9B;;OAEG;IACH,SAAS,EAAE,IAAI,CAAC;IAEhB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,OAAO,EAAE,IAAI,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,eAAe,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,QAAQ,EAAE,QAAQ,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAC;IAEjE;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,UAAU,EAAE,UAAU,CAAC;IAEvB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB"}
1
+ {"version":3,"file":"gateway.d.ts","sourceRoot":"","sources":["../../../src/types/gateway.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,IAAI,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,6DAA6D;IAC7D,SAAS,EAAE,MAAM,CAAC;IAClB,uCAAuC;IACvC,QAAQ,EAAE,OAAO,CAAC;IAClB,4CAA4C;IAC5C,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,6CAA6C;IAC7C,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,iCAAiC;IACjC,SAAS,EAAE,IAAI,CAAC;IAChB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,gCAAgC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,gEAAgE;IAChE,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,+CAA+C;IAC/C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,gDAAgD;IAChD,OAAO,EAAE,OAAO,CAAC;IACjB,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,gCAAgC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,uDAAuD;IACvD,eAAe,EAAE,MAAM,CAAC;IACxB,4DAA4D;IAC5D,QAAQ,EAAE,MAAM,CAAC;IACjB,kDAAkD;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,UAAU,EAAE,UAAU,CAAC;IACvB,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC"}
@@ -2,13 +2,8 @@
2
2
  /**
3
3
  * Gateway Mode Types
4
4
  *
5
- * Gateway Mode allows clients to make LLM calls directly while still using
6
- * AxonFlow for policy enforcement and audit logging.
7
- *
8
- * Usage:
9
- * 1. Call getPolicyApprovedContext() before making LLM call
10
- * 2. Make LLM call directly to your provider (using returned approved data)
11
- * 3. Call auditLLMCall() after to record the call for compliance
5
+ * Gateway Mode enables direct LLM calls with AxonFlow governance.
6
+ * Pre-check policies before calling your LLM, then audit the call afterward.
12
7
  */
13
8
  Object.defineProperty(exports, "__esModule", { value: true });
14
9
  //# sourceMappingURL=gateway.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gateway.js","sourceRoot":"","sources":["../../../src/types/gateway.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG"}
1
+ {"version":3,"file":"gateway.js","sourceRoot":"","sources":["../../../src/types/gateway.ts"],"names":[],"mappings":";AAAA;;;;;GAKG"}
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/utils/helpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI,CAE1D;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE/C;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,OAAO,CAEnC;AAED;;GAEG;AACH,wBAAgB,MAAM,IAAI,OAAO,CAEhC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAW9C"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/utils/helpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI,CAE1D;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE/C;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,OAAO,CAEnC;AAED;;GAEG;AACH,wBAAgB,MAAM,IAAI,OAAO,CAMhC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAW9C"}
@@ -34,7 +34,9 @@ function isBrowser() {
34
34
  * Check if running in Node.js
35
35
  */
36
36
  function isNode() {
37
- return typeof process !== 'undefined' && process.versions !== undefined && process.versions.node !== undefined;
37
+ return (typeof process !== 'undefined' &&
38
+ process.versions !== undefined &&
39
+ process.versions.node !== undefined);
38
40
  }
39
41
  /**
40
42
  * Safe JSON stringify that handles circular references
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/utils/helpers.ts"],"names":[],"mappings":";;AAGA,8CAEC;AAKD,4BAEC;AAKD,sBAEC;AAKD,8BAEC;AAKD,wBAEC;AAKD,sCAWC;AAjDD;;GAEG;AACH,SAAgB,iBAAiB;IAC/B,OAAO,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;AACxE,CAAC;AAED;;GAEG;AACH,SAAgB,QAAQ,CAAC,OAAe,EAAE,IAAU;IAClD,OAAO,CAAC,GAAG,CAAC,cAAc,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAClF,CAAC;AAED;;GAEG;AACH,SAAgB,KAAK,CAAC,EAAU;IAC9B,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AACzD,CAAC;AAED;;GAEG;AACH,SAAgB,SAAS;IACvB,OAAO,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,WAAW,CAAC;AACjF,CAAC;AAED;;GAEG;AACH,SAAgB,MAAM;IACpB,OAAO,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC;AACjH,CAAC;AAED;;GAEG;AACH,SAAgB,aAAa,CAAC,GAAQ;IACpC,MAAM,IAAI,GAAG,IAAI,OAAO,EAAE,CAAC;IAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QACxC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAChD,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBACpB,OAAO,YAAY,CAAC;YACtB,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/utils/helpers.ts"],"names":[],"mappings":";;AAGA,8CAEC;AAKD,4BAEC;AAKD,sBAEC;AAKD,8BAEC;AAKD,wBAMC;AAKD,sCAWC;AArDD;;GAEG;AACH,SAAgB,iBAAiB;IAC/B,OAAO,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;AACxE,CAAC;AAED;;GAEG;AACH,SAAgB,QAAQ,CAAC,OAAe,EAAE,IAAU;IAClD,OAAO,CAAC,GAAG,CAAC,cAAc,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAClF,CAAC;AAED;;GAEG;AACH,SAAgB,KAAK,CAAC,EAAU;IAC9B,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AACzD,CAAC;AAED;;GAEG;AACH,SAAgB,SAAS;IACvB,OAAO,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,WAAW,CAAC;AACjF,CAAC;AAED;;GAEG;AACH,SAAgB,MAAM;IACpB,OAAO,CACL,OAAO,OAAO,KAAK,WAAW;QAC9B,OAAO,CAAC,QAAQ,KAAK,SAAS;QAC9B,OAAO,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS,CACpC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,aAAa,CAAC,GAAQ;IACpC,MAAM,IAAI,GAAG,IAAI,OAAO,EAAE,CAAC;IAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QACxC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAChD,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBACpB,OAAO,YAAY,CAAC;YACtB,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1,4 +1,4 @@
1
- import { AxonFlowConfig, ConnectorMetadata, ConnectorInstallRequest, ConnectorResponse, PlanResponse, PlanExecutionResponse, PreCheckRequest, PolicyApprovalResult, TokenUsage, AuditResult } from './types';
1
+ import { AxonFlowConfig, ConnectorMetadata, ConnectorInstallRequest, ConnectorResponse, PlanResponse, PlanExecutionResponse, PolicyApprovalResult, PolicyApprovalOptions, AuditResult, AuditOptions } from './types';
2
2
  /**
3
3
  * Main AxonFlow client for invisible AI governance
4
4
  */
@@ -46,66 +46,90 @@ export declare class AxonFlow {
46
46
  queryConnector(connectorName: string, query: string, params?: any): Promise<ConnectorResponse>;
47
47
  /**
48
48
  * Generate a multi-agent execution plan from a natural language query
49
+ * @param query - Natural language query describing the task
50
+ * @param domain - Optional domain hint (travel, healthcare, etc.)
51
+ * @param userToken - Optional user token for authentication (defaults to tenant/client_id)
49
52
  */
50
- generatePlan(query: string, domain?: string): Promise<PlanResponse>;
53
+ generatePlan(query: string, domain?: string, userToken?: string): Promise<PlanResponse>;
51
54
  /**
52
55
  * Execute a previously generated multi-agent plan
56
+ * @param planId - ID of the plan to execute
57
+ * @param userToken - Optional user token for authentication (defaults to tenant/client_id)
53
58
  */
54
- executePlan(planId: string): Promise<PlanExecutionResponse>;
59
+ executePlan(planId: string, userToken?: string): Promise<PlanExecutionResponse>;
55
60
  /**
56
61
  * Get the status of a running or completed plan
57
62
  */
58
63
  getPlanStatus(planId: string): Promise<PlanExecutionResponse>;
59
64
  /**
60
- * Perform policy pre-check before making LLM call
61
- *
62
- * This is the first step in Gateway Mode. Call this before making your
63
- * LLM call to ensure policy compliance.
65
+ * Gateway Mode: Pre-check policy approval before making a direct LLM call.
66
+ * Alias for getPolicyApprovedContext() for simpler API.
67
+ */
68
+ preCheck(options: PolicyApprovalOptions): Promise<PolicyApprovalResult>;
69
+ /**
70
+ * Gateway Mode: Get policy-approved context before making a direct LLM call.
64
71
  *
65
- * @param request Pre-check request containing user token, query, and optional data sources
66
- * @returns PolicyApprovalResult with context ID and approved data (if any)
72
+ * Use this when you want to:
73
+ * - Make direct LLM calls (not through AxonFlow proxy)
74
+ * - Have full control over your LLM provider/model selection
75
+ * - Minimize latency by calling LLM directly
67
76
  *
68
77
  * @example
69
- * const result = await axonflow.getPolicyApprovedContext({
70
- * userToken: 'user-jwt-token',
71
- * dataSources: ['postgres', 'salesforce'],
72
- * query: 'Find all patients with recent lab results'
78
+ * ```typescript
79
+ * const ctx = await axonflow.getPolicyApprovedContext({
80
+ * userToken: 'user-jwt',
81
+ * query: 'Analyze this customer data',
82
+ * dataSources: ['postgres']
73
83
  * });
74
84
  *
75
- * if (!result.approved) {
76
- * throw new Error(`Request blocked: ${result.blockReason}`);
85
+ * if (!ctx.approved) {
86
+ * throw new Error(`Blocked: ${ctx.blockReason}`);
77
87
  * }
78
88
  *
79
- * // Use result.approvedData to build your LLM prompt
80
- * const prompt = buildPrompt(result.approvedData);
89
+ * // Make direct LLM call with approved data
90
+ * const response = await openai.chat.completions.create({
91
+ * model: 'gpt-4',
92
+ * messages: [{ role: 'user', content: JSON.stringify(ctx.approvedData) }]
93
+ * });
94
+ *
95
+ * // Audit the call
96
+ * await axonflow.auditLLMCall({
97
+ * contextId: ctx.contextId,
98
+ * responseSummary: response.choices[0].message.content.substring(0, 100),
99
+ * provider: 'openai',
100
+ * model: 'gpt-4',
101
+ * tokenUsage: {
102
+ * promptTokens: response.usage.prompt_tokens,
103
+ * completionTokens: response.usage.completion_tokens,
104
+ * totalTokens: response.usage.total_tokens
105
+ * },
106
+ * latencyMs: 250
107
+ * });
108
+ * ```
81
109
  */
82
- getPolicyApprovedContext(request: PreCheckRequest): Promise<PolicyApprovalResult>;
110
+ getPolicyApprovedContext(options: PolicyApprovalOptions): Promise<PolicyApprovalResult>;
83
111
  /**
84
- * Report LLM call details for audit logging
112
+ * Gateway Mode: Audit an LLM call after completion.
85
113
  *
86
- * This is the second step in Gateway Mode. Call this after making your
87
- * LLM call to record it in the audit trail.
88
- *
89
- * @param contextId Context ID from getPolicyApprovedContext()
90
- * @param responseSummary Brief summary of the LLM response (not full response)
91
- * @param provider LLM provider name
92
- * @param model Model name
93
- * @param tokenUsage Token counts from LLM response
94
- * @param latencyMs Time taken for LLM call in milliseconds
95
- * @param metadata Optional additional metadata
96
- * @returns AuditResult confirming the audit was recorded
114
+ * Call this after making a direct LLM call to log the audit trail.
115
+ * This is required for compliance and monitoring.
97
116
  *
98
117
  * @example
99
- * const result = await axonflow.auditLLMCall(
100
- * ctx.contextId,
101
- * 'Found 5 patients with recent lab results',
102
- * 'openai',
103
- * 'gpt-4',
104
- * { promptTokens: 100, completionTokens: 50, totalTokens: 150 },
105
- * 250,
106
- * { sessionId: 'session-123' }
107
- * );
118
+ * ```typescript
119
+ * await axonflow.auditLLMCall({
120
+ * contextId: ctx.contextId,
121
+ * responseSummary: 'Generated report with 5 items',
122
+ * provider: 'openai',
123
+ * model: 'gpt-4',
124
+ * tokenUsage: {
125
+ * promptTokens: 100,
126
+ * completionTokens: 50,
127
+ * totalTokens: 150
128
+ * },
129
+ * latencyMs: 250
130
+ * });
131
+ * ```
108
132
  */
109
- auditLLMCall(contextId: string, responseSummary: string, provider: string, model: string, tokenUsage: TokenUsage, latencyMs: number, metadata?: Record<string, any>): Promise<AuditResult>;
133
+ auditLLMCall(options: AuditOptions): Promise<AuditResult>;
110
134
  }
111
135
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EAId,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EACjB,YAAY,EACZ,qBAAqB,EACrB,eAAe,EACf,oBAAoB,EACpB,UAAU,EACV,WAAW,EACZ,MAAM,SAAS,CAAC;AAMjB;;GAEG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,YAAY,CAAyB;gBAEjC,MAAM,EAAE,cAAc;IAwBlC;;;;OAIG;IACG,OAAO,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAqD5D;;OAEG;YACW,cAAc;IAiB5B;;OAEG;YACW,aAAa;IAuD3B;;OAEG;YACW,QAAQ;IAYtB;;OAEG;IACH,OAAO,CAAC,eAAe;IAMvB;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,MAAM,GAAE,MAAmB,GAAG,QAAQ;IASrD;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAqBpD;;OAEG;IACG,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBvE;;OAEG;IACG,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA0CpG;;OAEG;IACG,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IA6CzE;;OAEG;IACG,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAyCjE;;OAEG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAuDnE;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACG,wBAAwB,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,oBAAoB,CAAC;IA8DvF;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACG,YAAY,CAChB,SAAS,EAAE,MAAM,EACjB,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC7B,OAAO,CAAC,WAAW,CAAC;CA4DxB"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EAId,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EACjB,YAAY,EACZ,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EACrB,WAAW,EACX,YAAY,EACb,MAAM,SAAS,CAAC;AAOjB;;GAEG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAUZ;IACF,OAAO,CAAC,YAAY,CAAyB;gBAEjC,MAAM,EAAE,cAAc;IAqDlC;;;;OAIG;IACG,OAAO,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAuD5D;;OAEG;YACW,cAAc;IAiB5B;;OAEG;YACW,aAAa;IAyE3B;;OAEG;YACW,QAAQ;IAYtB;;OAEG;IACH,OAAO,CAAC,eAAe;IAQvB;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,MAAM,GAAE,MAAmB,GAAG,QAAQ;IASrD;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAqBpD;;OAEG;IACG,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAiCvE;;OAEG;IACG,cAAc,CAClB,aAAa,EAAE,MAAM,EACrB,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,GAAG,GACX,OAAO,CAAC,iBAAiB,CAAC;IAkD7B;;;;;OAKG;IACG,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAqD7F;;;;OAIG;IACG,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAiDrF;;OAEG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IA+BnE;;;OAGG;IACG,QAAQ,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAI7E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwCG;IACG,wBAAwB,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAkF7F;;;;;;;;;;;;;;;;;;;;;OAqBG;IACG,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;CAqEhE"}