@objectstack/spec 0.2.0 → 0.3.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 (422) hide show
  1. package/README.md +127 -5
  2. package/dist/ai/conversation.zod.d.ts +1059 -0
  3. package/dist/ai/conversation.zod.d.ts.map +1 -0
  4. package/dist/ai/conversation.zod.js +248 -0
  5. package/dist/ai/cost.zod.d.ts +2025 -0
  6. package/dist/ai/cost.zod.d.ts.map +1 -0
  7. package/dist/ai/cost.zod.js +324 -0
  8. package/dist/ai/index.d.ts +22 -0
  9. package/dist/ai/index.d.ts.map +1 -0
  10. package/dist/ai/index.js +37 -0
  11. package/dist/ai/model-registry.zod.d.ts +1389 -0
  12. package/dist/ai/model-registry.zod.d.ts.map +1 -0
  13. package/dist/ai/model-registry.zod.js +164 -0
  14. package/dist/ai/nlq.zod.d.ts +1126 -0
  15. package/dist/ai/nlq.zod.d.ts.map +1 -0
  16. package/dist/ai/nlq.zod.js +246 -0
  17. package/dist/ai/predictive.zod.d.ts +838 -0
  18. package/dist/ai/predictive.zod.d.ts.map +1 -0
  19. package/dist/ai/predictive.zod.js +244 -0
  20. package/dist/ai/rag-pipeline.zod.d.ts +1034 -0
  21. package/dist/ai/rag-pipeline.zod.d.ts.map +1 -0
  22. package/dist/ai/rag-pipeline.zod.js +244 -0
  23. package/dist/ai/workflow-automation.zod.d.ts +590 -0
  24. package/dist/ai/workflow-automation.zod.d.ts.map +1 -0
  25. package/dist/ai/workflow-automation.zod.js +197 -0
  26. package/dist/api/contract.zod.d.ts +22 -22
  27. package/dist/api/index.d.ts +9 -0
  28. package/dist/api/index.d.ts.map +1 -0
  29. package/dist/api/index.js +24 -0
  30. package/dist/data/field.zod.d.ts +409 -4
  31. package/dist/data/field.zod.d.ts.map +1 -1
  32. package/dist/data/field.zod.js +28 -2
  33. package/dist/data/index.d.ts +21 -0
  34. package/dist/data/index.d.ts.map +1 -0
  35. package/dist/data/index.js +36 -0
  36. package/dist/data/mapping.zod.d.ts +6 -6
  37. package/dist/data/object.zod.d.ts +80 -10
  38. package/dist/data/object.zod.d.ts.map +1 -1
  39. package/dist/data/query.zod.d.ts +386 -3
  40. package/dist/data/query.zod.d.ts.map +1 -1
  41. package/dist/data/query.zod.js +386 -3
  42. package/dist/data/validation.zod.d.ts +349 -0
  43. package/dist/data/validation.zod.d.ts.map +1 -1
  44. package/dist/data/validation.zod.js +395 -0
  45. package/dist/data/workflow.zod.d.ts +809 -18
  46. package/dist/data/workflow.zod.d.ts.map +1 -1
  47. package/dist/data/workflow.zod.js +115 -7
  48. package/dist/index.d.ts +36 -41
  49. package/dist/index.d.ts.map +1 -1
  50. package/dist/index.js +64 -49
  51. package/dist/system/api.zod.d.ts +4 -4
  52. package/dist/system/audit.zod.d.ts +1172 -0
  53. package/dist/system/audit.zod.d.ts.map +1 -0
  54. package/dist/system/audit.zod.js +596 -0
  55. package/dist/system/auth-protocol.d.ts +175 -0
  56. package/dist/system/auth-protocol.d.ts.map +1 -0
  57. package/dist/system/auth-protocol.js +60 -0
  58. package/dist/system/auth.zod.d.ts +1089 -57
  59. package/dist/system/auth.zod.d.ts.map +1 -1
  60. package/dist/system/auth.zod.js +135 -1
  61. package/dist/system/driver.zod.d.ts +4 -4
  62. package/dist/system/events.zod.d.ts +177 -0
  63. package/dist/system/events.zod.d.ts.map +1 -0
  64. package/dist/system/events.zod.js +51 -0
  65. package/dist/system/identity.zod.d.ts +234 -180
  66. package/dist/system/identity.zod.d.ts.map +1 -1
  67. package/dist/system/identity.zod.js +168 -51
  68. package/dist/system/index.d.ts +33 -0
  69. package/dist/system/index.d.ts.map +1 -0
  70. package/dist/system/index.js +48 -0
  71. package/dist/system/job.zod.d.ts +237 -0
  72. package/dist/system/job.zod.d.ts.map +1 -0
  73. package/dist/system/job.zod.js +82 -0
  74. package/dist/system/organization.zod.d.ts +179 -0
  75. package/dist/system/organization.zod.d.ts.map +1 -0
  76. package/dist/system/organization.zod.js +129 -0
  77. package/dist/system/realtime.zod.d.ts +135 -0
  78. package/dist/system/realtime.zod.d.ts.map +1 -0
  79. package/dist/system/realtime.zod.js +83 -0
  80. package/dist/system/tenant.zod.d.ts +1151 -0
  81. package/dist/system/tenant.zod.d.ts.map +1 -0
  82. package/dist/system/tenant.zod.js +498 -0
  83. package/dist/system/webhook.zod.d.ts +2 -2
  84. package/dist/ui/action.zod.d.ts +10 -10
  85. package/dist/ui/index.d.ts +17 -0
  86. package/dist/ui/index.d.ts.map +1 -0
  87. package/dist/ui/index.js +32 -0
  88. package/dist/ui/theme.zod.d.ts +18 -18
  89. package/dist/ui/widget.zod.d.ts +40 -5
  90. package/dist/ui/widget.zod.d.ts.map +1 -1
  91. package/json-schema/README.md +127 -0
  92. package/json-schema/ai/AITask.json +123 -0
  93. package/json-schema/ai/AITaskType.json +21 -0
  94. package/json-schema/ai/AIWorkflowAutomation.json +379 -0
  95. package/json-schema/ai/AIWorkflowExecutionResult.json +105 -0
  96. package/json-schema/ai/AIWorkflowTrigger.json +18 -0
  97. package/json-schema/ai/BatchAIWorkflowExecution.json +48 -0
  98. package/json-schema/ai/BillingPeriod.json +18 -0
  99. package/json-schema/ai/BudgetLimit.json +111 -0
  100. package/json-schema/ai/BudgetStatus.json +91 -0
  101. package/json-schema/ai/BudgetType.json +17 -0
  102. package/json-schema/ai/ChunkingStrategy.json +133 -0
  103. package/json-schema/ai/ConversationAnalytics.json +86 -0
  104. package/json-schema/ai/ConversationContext.json +48 -0
  105. package/json-schema/ai/ConversationMessage.json +209 -0
  106. package/json-schema/ai/ConversationSession.json +458 -0
  107. package/json-schema/ai/ConversationSummary.json +73 -0
  108. package/json-schema/ai/CostAlert.json +107 -0
  109. package/json-schema/ai/CostAlertType.json +16 -0
  110. package/json-schema/ai/CostAnalytics.json +589 -0
  111. package/json-schema/ai/CostBreakdownDimension.json +20 -0
  112. package/json-schema/ai/CostBreakdownEntry.json +60 -0
  113. package/json-schema/ai/CostEntry.json +106 -0
  114. package/json-schema/ai/CostMetricType.json +17 -0
  115. package/json-schema/ai/CostOptimizationRecommendation.json +100 -0
  116. package/json-schema/ai/CostQueryFilters.json +112 -0
  117. package/json-schema/ai/CostReport.json +964 -0
  118. package/json-schema/ai/DocumentChunk.json +97 -0
  119. package/json-schema/ai/DocumentLoaderConfig.json +69 -0
  120. package/json-schema/ai/DocumentMetadata.json +61 -0
  121. package/json-schema/ai/EmbeddingModel.json +57 -0
  122. package/json-schema/ai/Entity.json +55 -0
  123. package/json-schema/ai/EvaluationMetrics.json +64 -0
  124. package/json-schema/ai/FieldSynonymConfig.json +39 -0
  125. package/json-schema/ai/FunctionCall.json +28 -0
  126. package/json-schema/ai/Hyperparameters.json +80 -0
  127. package/json-schema/ai/MessageContent.json +46 -0
  128. package/json-schema/ai/MessageContentType.json +16 -0
  129. package/json-schema/ai/MessagePruningEvent.json +92 -0
  130. package/json-schema/ai/MessageRole.json +16 -0
  131. package/json-schema/ai/ModelCapability.json +47 -0
  132. package/json-schema/ai/ModelConfig.json +181 -0
  133. package/json-schema/ai/ModelDrift.json +73 -0
  134. package/json-schema/ai/ModelFeature.json +71 -0
  135. package/json-schema/ai/ModelLimits.json +45 -0
  136. package/json-schema/ai/ModelPricing.json +28 -0
  137. package/json-schema/ai/ModelProvider.json +19 -0
  138. package/json-schema/ai/ModelRegistry.json +427 -0
  139. package/json-schema/ai/ModelRegistryEntry.json +239 -0
  140. package/json-schema/ai/ModelSelectionCriteria.json +50 -0
  141. package/json-schema/ai/NLQAnalytics.json +106 -0
  142. package/json-schema/ai/NLQFieldMapping.json +40 -0
  143. package/json-schema/ai/NLQModelConfig.json +78 -0
  144. package/json-schema/ai/NLQParseResult.json +252 -0
  145. package/json-schema/ai/NLQRequest.json +110 -0
  146. package/json-schema/ai/NLQResponse.json +288 -0
  147. package/json-schema/ai/NLQTrainingExample.json +120 -0
  148. package/json-schema/ai/PostProcessingAction.json +41 -0
  149. package/json-schema/ai/PredictionRequest.json +39 -0
  150. package/json-schema/ai/PredictionResult.json +82 -0
  151. package/json-schema/ai/PredictiveModel.json +445 -0
  152. package/json-schema/ai/PredictiveModelType.json +18 -0
  153. package/json-schema/ai/PromptTemplate.json +163 -0
  154. package/json-schema/ai/PromptVariable.json +56 -0
  155. package/json-schema/ai/QueryContext.json +72 -0
  156. package/json-schema/ai/QueryIntent.json +21 -0
  157. package/json-schema/ai/QueryTemplate.json +81 -0
  158. package/json-schema/ai/RAGPipelineConfig.json +552 -0
  159. package/json-schema/ai/RAGPipelineStatus.json +66 -0
  160. package/json-schema/ai/RAGQueryRequest.json +64 -0
  161. package/json-schema/ai/RAGQueryResponse.json +108 -0
  162. package/json-schema/ai/RerankingConfig.json +34 -0
  163. package/json-schema/ai/RetrievalStrategy.json +121 -0
  164. package/json-schema/ai/Timeframe.json +68 -0
  165. package/json-schema/ai/TokenBudgetConfig.json +92 -0
  166. package/json-schema/ai/TokenBudgetStrategy.json +16 -0
  167. package/json-schema/ai/TokenUsageStats.json +66 -0
  168. package/json-schema/ai/ToolCall.json +49 -0
  169. package/json-schema/ai/TrainingConfig.json +88 -0
  170. package/json-schema/ai/VectorStoreConfig.json +82 -0
  171. package/json-schema/ai/VectorStoreProvider.json +21 -0
  172. package/json-schema/ai/WorkflowFieldCondition.json +33 -0
  173. package/json-schema/ai/WorkflowSchedule.json +51 -0
  174. package/json-schema/data/CustomScriptAction.json +49 -0
  175. package/json-schema/{Field.json → data/Field.json} +50 -1
  176. package/json-schema/{FieldType.json → data/FieldType.json} +4 -1
  177. package/json-schema/data/HttpCallAction.json +81 -0
  178. package/json-schema/{Object.json → data/Object.json} +50 -1
  179. package/json-schema/data/PushNotificationAction.json +59 -0
  180. package/json-schema/data/SlackMessageAction.json +45 -0
  181. package/json-schema/data/SmsNotificationAction.json +50 -0
  182. package/json-schema/data/TaskCreationAction.json +59 -0
  183. package/json-schema/data/TeamsMessageAction.json +45 -0
  184. package/json-schema/data/WebhookTriggerAction.json +58 -0
  185. package/json-schema/data/WorkflowAction.json +465 -0
  186. package/json-schema/data/WorkflowRule.json +509 -0
  187. package/json-schema/system/Account.json +87 -0
  188. package/json-schema/system/AuditConfig.json +587 -0
  189. package/json-schema/system/AuditEvent.json +232 -0
  190. package/json-schema/system/AuditEventActor.json +48 -0
  191. package/json-schema/system/AuditEventChange.json +25 -0
  192. package/json-schema/system/AuditEventFilter.json +127 -0
  193. package/json-schema/system/AuditEventSeverity.json +19 -0
  194. package/json-schema/system/AuditEventTarget.json +33 -0
  195. package/json-schema/system/AuditEventType.json +53 -0
  196. package/json-schema/system/AuditRetentionPolicy.json +73 -0
  197. package/json-schema/system/AuditStorageConfig.json +60 -0
  198. package/json-schema/{AuthConfig.json → system/AuthConfig.json} +235 -0
  199. package/json-schema/system/CronSchedule.json +29 -0
  200. package/json-schema/system/DatabaseLevelIsolationStrategy.json +139 -0
  201. package/json-schema/system/DatabaseMapping.json +48 -0
  202. package/json-schema/system/EnterpriseAuthConfig.json +172 -0
  203. package/json-schema/system/Event.json +52 -0
  204. package/json-schema/system/EventHandler.json +29 -0
  205. package/json-schema/system/EventMetadata.json +33 -0
  206. package/json-schema/system/EventPersistence.json +25 -0
  207. package/json-schema/system/EventRoute.json +27 -0
  208. package/json-schema/system/IntervalSchedule.json +25 -0
  209. package/json-schema/system/Invitation.json +69 -0
  210. package/json-schema/system/InvitationStatus.json +15 -0
  211. package/json-schema/system/Job.json +127 -0
  212. package/json-schema/system/JobExecution.json +49 -0
  213. package/json-schema/system/JobExecutionStatus.json +15 -0
  214. package/json-schema/{LDAPConfig.json → system/LDAPConfig.json} +22 -5
  215. package/json-schema/system/LevelIsolationStrategySchema.json +93 -0
  216. package/json-schema/system/Member.json +46 -0
  217. package/json-schema/{OIDCConfig.json → system/OIDCConfig.json} +18 -3
  218. package/json-schema/system/OnceSchedule.json +25 -0
  219. package/json-schema/system/Organization.json +52 -0
  220. package/json-schema/system/Presence.json +40 -0
  221. package/json-schema/system/PresenceStatus.json +14 -0
  222. package/json-schema/system/RealtimeAction.json +14 -0
  223. package/json-schema/system/RealtimeEvent.json +51 -0
  224. package/json-schema/system/RealtimeEventType.json +15 -0
  225. package/json-schema/system/RetryPolicy.json +30 -0
  226. package/json-schema/system/RowLevelIsolationStrategy.json +74 -0
  227. package/json-schema/{SAMLConfig.json → system/SAMLConfig.json} +17 -3
  228. package/json-schema/system/Schedule.json +71 -0
  229. package/json-schema/system/Session.json +63 -0
  230. package/json-schema/{StandardAuthProvider.json → system/StandardAuthProvider.json} +235 -0
  231. package/json-schema/system/Subscription.json +65 -0
  232. package/json-schema/system/SubscriptionEvent.json +32 -0
  233. package/json-schema/system/SuspiciousActivityRule.json +175 -0
  234. package/json-schema/system/Tenant.json +61 -0
  235. package/json-schema/system/TenantIsolationConfig.json +298 -0
  236. package/json-schema/system/TenantIsolationLevel.json +14 -0
  237. package/json-schema/system/TenantQuota.json +27 -0
  238. package/json-schema/system/TenantSecurityPolicy.json +115 -0
  239. package/json-schema/system/TransportProtocol.json +14 -0
  240. package/json-schema/system/User.json +51 -0
  241. package/json-schema/system/VerificationToken.json +36 -0
  242. package/json-schema/{Action.json → ui/Action.json} +4 -1
  243. package/json-schema/{ActionParam.json → ui/ActionParam.json} +4 -1
  244. package/json-schema/{FieldWidgetProps.json → ui/FieldWidgetProps.json} +50 -1
  245. package/package.json +38 -12
  246. package/json-schema/AuthProtocol.json +0 -17
  247. package/json-schema/AuthProvider.json +0 -171
  248. package/json-schema/AuthenticationConfig.json +0 -601
  249. package/json-schema/AuthenticationProvider.json +0 -617
  250. package/json-schema/MenuItem.json +0 -28
  251. package/json-schema/WorkflowAction.json +0 -84
  252. package/json-schema/WorkflowRule.json +0 -128
  253. /package/json-schema/{AIKnowledge.json → ai/AIKnowledge.json} +0 -0
  254. /package/json-schema/{AIModelConfig.json → ai/AIModelConfig.json} +0 -0
  255. /package/json-schema/{AITool.json → ai/AITool.json} +0 -0
  256. /package/json-schema/{Agent.json → ai/Agent.json} +0 -0
  257. /package/json-schema/{ApiError.json → api/ApiError.json} +0 -0
  258. /package/json-schema/{BaseResponse.json → api/BaseResponse.json} +0 -0
  259. /package/json-schema/{BulkRequest.json → api/BulkRequest.json} +0 -0
  260. /package/json-schema/{BulkResponse.json → api/BulkResponse.json} +0 -0
  261. /package/json-schema/{CreateRequest.json → api/CreateRequest.json} +0 -0
  262. /package/json-schema/{DeleteResponse.json → api/DeleteResponse.json} +0 -0
  263. /package/json-schema/{ExportRequest.json → api/ExportRequest.json} +0 -0
  264. /package/json-schema/{ListRecordResponse.json → api/ListRecordResponse.json} +0 -0
  265. /package/json-schema/{ModificationResult.json → api/ModificationResult.json} +0 -0
  266. /package/json-schema/{RecordData.json → api/RecordData.json} +0 -0
  267. /package/json-schema/{SingleRecordResponse.json → api/SingleRecordResponse.json} +0 -0
  268. /package/json-schema/{UpdateRequest.json → api/UpdateRequest.json} +0 -0
  269. /package/json-schema/{Address.json → data/Address.json} +0 -0
  270. /package/json-schema/{AggregationFunction.json → data/AggregationFunction.json} +0 -0
  271. /package/json-schema/{AggregationNode.json → data/AggregationNode.json} +0 -0
  272. /package/json-schema/{AsyncValidation.json → data/AsyncValidation.json} +0 -0
  273. /package/json-schema/{ComparisonOperator.json → data/ComparisonOperator.json} +0 -0
  274. /package/json-schema/{ConditionalValidation.json → data/ConditionalValidation.json} +0 -0
  275. /package/json-schema/{CrossFieldValidation.json → data/CrossFieldValidation.json} +0 -0
  276. /package/json-schema/{CustomValidator.json → data/CustomValidator.json} +0 -0
  277. /package/json-schema/{Dataset.json → data/Dataset.json} +0 -0
  278. /package/json-schema/{DatasetMode.json → data/DatasetMode.json} +0 -0
  279. /package/json-schema/{EmailAlertAction.json → data/EmailAlertAction.json} +0 -0
  280. /package/json-schema/{EqualityOperator.json → data/EqualityOperator.json} +0 -0
  281. /package/json-schema/{FieldMapping.json → data/FieldMapping.json} +0 -0
  282. /package/json-schema/{FieldNode.json → data/FieldNode.json} +0 -0
  283. /package/json-schema/{FieldOperators.json → data/FieldOperators.json} +0 -0
  284. /package/json-schema/{FieldPermission.json → data/FieldPermission.json} +0 -0
  285. /package/json-schema/{FieldUpdateAction.json → data/FieldUpdateAction.json} +0 -0
  286. /package/json-schema/{FilterCondition.json → data/FilterCondition.json} +0 -0
  287. /package/json-schema/{FilterNode.json → data/FilterNode.json} +0 -0
  288. /package/json-schema/{FilterOperator.json → data/FilterOperator.json} +0 -0
  289. /package/json-schema/{Flow.json → data/Flow.json} +0 -0
  290. /package/json-schema/{FlowEdge.json → data/FlowEdge.json} +0 -0
  291. /package/json-schema/{FlowNode.json → data/FlowNode.json} +0 -0
  292. /package/json-schema/{FlowNodeAction.json → data/FlowNodeAction.json} +0 -0
  293. /package/json-schema/{FlowVariable.json → data/FlowVariable.json} +0 -0
  294. /package/json-schema/{FormatValidation.json → data/FormatValidation.json} +0 -0
  295. /package/json-schema/{Index.json → data/Index.json} +0 -0
  296. /package/json-schema/{JoinNode.json → data/JoinNode.json} +0 -0
  297. /package/json-schema/{JoinType.json → data/JoinType.json} +0 -0
  298. /package/json-schema/{LocationCoordinates.json → data/LocationCoordinates.json} +0 -0
  299. /package/json-schema/{LogicOperator.json → data/LogicOperator.json} +0 -0
  300. /package/json-schema/{Mapping.json → data/Mapping.json} +0 -0
  301. /package/json-schema/{NormalizedFilter.json → data/NormalizedFilter.json} +0 -0
  302. /package/json-schema/{OWDModel.json → data/OWDModel.json} +0 -0
  303. /package/json-schema/{ObjectCapabilities.json → data/ObjectCapabilities.json} +0 -0
  304. /package/json-schema/{ObjectPermission.json → data/ObjectPermission.json} +0 -0
  305. /package/json-schema/{PermissionSet.json → data/PermissionSet.json} +0 -0
  306. /package/json-schema/{Query.json → data/Query.json} +0 -0
  307. /package/json-schema/{QueryFilter.json → data/QueryFilter.json} +0 -0
  308. /package/json-schema/{RangeOperator.json → data/RangeOperator.json} +0 -0
  309. /package/json-schema/{ScriptValidation.json → data/ScriptValidation.json} +0 -0
  310. /package/json-schema/{SelectOption.json → data/SelectOption.json} +0 -0
  311. /package/json-schema/{SetOperator.json → data/SetOperator.json} +0 -0
  312. /package/json-schema/{SharingLevel.json → data/SharingLevel.json} +0 -0
  313. /package/json-schema/{SharingRule.json → data/SharingRule.json} +0 -0
  314. /package/json-schema/{SharingRuleType.json → data/SharingRuleType.json} +0 -0
  315. /package/json-schema/{SortNode.json → data/SortNode.json} +0 -0
  316. /package/json-schema/{SpecialOperator.json → data/SpecialOperator.json} +0 -0
  317. /package/json-schema/{StateMachineValidation.json → data/StateMachineValidation.json} +0 -0
  318. /package/json-schema/{StringOperator.json → data/StringOperator.json} +0 -0
  319. /package/json-schema/{TransformType.json → data/TransformType.json} +0 -0
  320. /package/json-schema/{Trigger.json → data/Trigger.json} +0 -0
  321. /package/json-schema/{TriggerAction.json → data/TriggerAction.json} +0 -0
  322. /package/json-schema/{TriggerContext.json → data/TriggerContext.json} +0 -0
  323. /package/json-schema/{TriggerTiming.json → data/TriggerTiming.json} +0 -0
  324. /package/json-schema/{UniquenessValidation.json → data/UniquenessValidation.json} +0 -0
  325. /package/json-schema/{ValidationRule.json → data/ValidationRule.json} +0 -0
  326. /package/json-schema/{WindowFunction.json → data/WindowFunction.json} +0 -0
  327. /package/json-schema/{WindowFunctionNode.json → data/WindowFunctionNode.json} +0 -0
  328. /package/json-schema/{WindowSpec.json → data/WindowSpec.json} +0 -0
  329. /package/json-schema/{WorkflowTriggerType.json → data/WorkflowTriggerType.json} +0 -0
  330. /package/json-schema/{AccountLinkingConfig.json → system/AccountLinkingConfig.json} +0 -0
  331. /package/json-schema/{ApiCapabilities.json → system/ApiCapabilities.json} +0 -0
  332. /package/json-schema/{ApiEndpoint.json → system/ApiEndpoint.json} +0 -0
  333. /package/json-schema/{ApiMapping.json → system/ApiMapping.json} +0 -0
  334. /package/json-schema/{ApiRoutes.json → system/ApiRoutes.json} +0 -0
  335. /package/json-schema/{AuditPolicy.json → system/AuditPolicy.json} +0 -0
  336. /package/json-schema/{AuthPluginConfig.json → system/AuthPluginConfig.json} +0 -0
  337. /package/json-schema/{AuthStrategy.json → system/AuthStrategy.json} +0 -0
  338. /package/json-schema/{CSRFConfig.json → system/CSRFConfig.json} +0 -0
  339. /package/json-schema/{DatabaseAdapter.json → system/DatabaseAdapter.json} +0 -0
  340. /package/json-schema/{Datasource.json → system/Datasource.json} +0 -0
  341. /package/json-schema/{DatasourceCapabilities.json → system/DatasourceCapabilities.json} +0 -0
  342. /package/json-schema/{Discovery.json → system/Discovery.json} +0 -0
  343. /package/json-schema/{DriverCapabilities.json → system/DriverCapabilities.json} +0 -0
  344. /package/json-schema/{DriverDefinition.json → system/DriverDefinition.json} +0 -0
  345. /package/json-schema/{DriverInterface.json → system/DriverInterface.json} +0 -0
  346. /package/json-schema/{DriverOptions.json → system/DriverOptions.json} +0 -0
  347. /package/json-schema/{DriverType.json → system/DriverType.json} +0 -0
  348. /package/json-schema/{EmailPasswordConfig.json → system/EmailPasswordConfig.json} +0 -0
  349. /package/json-schema/{Feature.json → system/Feature.json} +0 -0
  350. /package/json-schema/{HttpMethod.json → system/HttpMethod.json} +0 -0
  351. /package/json-schema/{I18nContext.json → system/I18nContext.json} +0 -0
  352. /package/json-schema/{License.json → system/License.json} +0 -0
  353. /package/json-schema/{Locale.json → system/Locale.json} +0 -0
  354. /package/json-schema/{Logger.json → system/Logger.json} +0 -0
  355. /package/json-schema/{MagicLinkConfig.json → system/MagicLinkConfig.json} +0 -0
  356. /package/json-schema/{Manifest.json → system/Manifest.json} +0 -0
  357. /package/json-schema/{MetricType.json → system/MetricType.json} +0 -0
  358. /package/json-schema/{NetworkPolicy.json → system/NetworkPolicy.json} +0 -0
  359. /package/json-schema/{OAuthProvider.json → system/OAuthProvider.json} +0 -0
  360. /package/json-schema/{ObjectQLClient.json → system/ObjectQLClient.json} +0 -0
  361. /package/json-schema/{PasskeyConfig.json → system/PasskeyConfig.json} +0 -0
  362. /package/json-schema/{PasswordPolicy.json → system/PasswordPolicy.json} +0 -0
  363. /package/json-schema/{Plan.json → system/Plan.json} +0 -0
  364. /package/json-schema/{Plugin.json → system/Plugin.json} +0 -0
  365. /package/json-schema/{PluginContext.json → system/PluginContext.json} +0 -0
  366. /package/json-schema/{PluginLifecycle.json → system/PluginLifecycle.json} +0 -0
  367. /package/json-schema/{Policy.json → system/Policy.json} +0 -0
  368. /package/json-schema/{RateLimit.json → system/RateLimit.json} +0 -0
  369. /package/json-schema/{RateLimitConfig.json → system/RateLimitConfig.json} +0 -0
  370. /package/json-schema/{Role.json → system/Role.json} +0 -0
  371. /package/json-schema/{Router.json → system/Router.json} +0 -0
  372. /package/json-schema/{Scheduler.json → system/Scheduler.json} +0 -0
  373. /package/json-schema/{ScopedStorage.json → system/ScopedStorage.json} +0 -0
  374. /package/json-schema/{SessionConfig.json → system/SessionConfig.json} +0 -0
  375. /package/json-schema/{SessionPolicy.json → system/SessionPolicy.json} +0 -0
  376. /package/json-schema/{SystemAPI.json → system/SystemAPI.json} +0 -0
  377. /package/json-schema/{Territory.json → system/Territory.json} +0 -0
  378. /package/json-schema/{TerritoryModel.json → system/TerritoryModel.json} +0 -0
  379. /package/json-schema/{TerritoryType.json → system/TerritoryType.json} +0 -0
  380. /package/json-schema/{TranslationBundle.json → system/TranslationBundle.json} +0 -0
  381. /package/json-schema/{TranslationData.json → system/TranslationData.json} +0 -0
  382. /package/json-schema/{TwoFactorConfig.json → system/TwoFactorConfig.json} +0 -0
  383. /package/json-schema/{UserFieldMapping.json → system/UserFieldMapping.json} +0 -0
  384. /package/json-schema/{Webhook.json → system/Webhook.json} +0 -0
  385. /package/json-schema/{WebhookReceiver.json → system/WebhookReceiver.json} +0 -0
  386. /package/json-schema/{WebhookTriggerType.json → system/WebhookTriggerType.json} +0 -0
  387. /package/json-schema/{Animation.json → ui/Animation.json} +0 -0
  388. /package/json-schema/{App.json → ui/App.json} +0 -0
  389. /package/json-schema/{AppBranding.json → ui/AppBranding.json} +0 -0
  390. /package/json-schema/{BorderRadius.json → ui/BorderRadius.json} +0 -0
  391. /package/json-schema/{Breakpoints.json → ui/Breakpoints.json} +0 -0
  392. /package/json-schema/{CalendarConfig.json → ui/CalendarConfig.json} +0 -0
  393. /package/json-schema/{ChartType.json → ui/ChartType.json} +0 -0
  394. /package/json-schema/{ColorPalette.json → ui/ColorPalette.json} +0 -0
  395. /package/json-schema/{Dashboard.json → ui/Dashboard.json} +0 -0
  396. /package/json-schema/{DashboardNavItem.json → ui/DashboardNavItem.json} +0 -0
  397. /package/json-schema/{DashboardWidget.json → ui/DashboardWidget.json} +0 -0
  398. /package/json-schema/{FormSection.json → ui/FormSection.json} +0 -0
  399. /package/json-schema/{FormView.json → ui/FormView.json} +0 -0
  400. /package/json-schema/{GanttConfig.json → ui/GanttConfig.json} +0 -0
  401. /package/json-schema/{GroupNavItem.json → ui/GroupNavItem.json} +0 -0
  402. /package/json-schema/{KanbanConfig.json → ui/KanbanConfig.json} +0 -0
  403. /package/json-schema/{ListView.json → ui/ListView.json} +0 -0
  404. /package/json-schema/{NavigationItem.json → ui/NavigationItem.json} +0 -0
  405. /package/json-schema/{ObjectNavItem.json → ui/ObjectNavItem.json} +0 -0
  406. /package/json-schema/{Page.json → ui/Page.json} +0 -0
  407. /package/json-schema/{PageComponent.json → ui/PageComponent.json} +0 -0
  408. /package/json-schema/{PageNavItem.json → ui/PageNavItem.json} +0 -0
  409. /package/json-schema/{PageRegion.json → ui/PageRegion.json} +0 -0
  410. /package/json-schema/{Report.json → ui/Report.json} +0 -0
  411. /package/json-schema/{ReportChart.json → ui/ReportChart.json} +0 -0
  412. /package/json-schema/{ReportColumn.json → ui/ReportColumn.json} +0 -0
  413. /package/json-schema/{ReportGrouping.json → ui/ReportGrouping.json} +0 -0
  414. /package/json-schema/{ReportType.json → ui/ReportType.json} +0 -0
  415. /package/json-schema/{Shadow.json → ui/Shadow.json} +0 -0
  416. /package/json-schema/{Spacing.json → ui/Spacing.json} +0 -0
  417. /package/json-schema/{Theme.json → ui/Theme.json} +0 -0
  418. /package/json-schema/{ThemeMode.json → ui/ThemeMode.json} +0 -0
  419. /package/json-schema/{Typography.json → ui/Typography.json} +0 -0
  420. /package/json-schema/{UrlNavItem.json → ui/UrlNavItem.json} +0 -0
  421. /package/json-schema/{View.json → ui/View.json} +0 -0
  422. /package/json-schema/{ZIndex.json → ui/ZIndex.json} +0 -0
@@ -0,0 +1,2025 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * AI Cost Tracking Protocol
4
+ *
5
+ * Monitor and control AI API costs with budgets, alerts, and analytics.
6
+ * Provides cost optimization, budget enforcement, and financial reporting.
7
+ */
8
+ /**
9
+ * Cost Metric Type
10
+ */
11
+ export declare const CostMetricTypeSchema: z.ZodEnum<["token", "request", "character", "second", "image", "embedding"]>;
12
+ /**
13
+ * Billing Period
14
+ */
15
+ export declare const BillingPeriodSchema: z.ZodEnum<["hourly", "daily", "weekly", "monthly", "quarterly", "yearly", "custom"]>;
16
+ /**
17
+ * Cost Entry
18
+ */
19
+ export declare const CostEntrySchema: z.ZodObject<{
20
+ /** Identity */
21
+ id: z.ZodString;
22
+ timestamp: z.ZodString;
23
+ /** Request Details */
24
+ modelId: z.ZodString;
25
+ provider: z.ZodString;
26
+ operation: z.ZodString;
27
+ /** Usage Metrics */
28
+ promptTokens: z.ZodOptional<z.ZodNumber>;
29
+ completionTokens: z.ZodOptional<z.ZodNumber>;
30
+ totalTokens: z.ZodOptional<z.ZodNumber>;
31
+ requestCount: z.ZodDefault<z.ZodNumber>;
32
+ /** Cost Calculation */
33
+ promptCost: z.ZodOptional<z.ZodNumber>;
34
+ completionCost: z.ZodOptional<z.ZodNumber>;
35
+ totalCost: z.ZodNumber;
36
+ currency: z.ZodDefault<z.ZodString>;
37
+ /** Context */
38
+ sessionId: z.ZodOptional<z.ZodString>;
39
+ userId: z.ZodOptional<z.ZodString>;
40
+ agentId: z.ZodOptional<z.ZodString>;
41
+ object: z.ZodOptional<z.ZodString>;
42
+ recordId: z.ZodOptional<z.ZodString>;
43
+ /** Metadata */
44
+ tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
45
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
46
+ }, "strip", z.ZodTypeAny, {
47
+ currency: string;
48
+ provider: string;
49
+ id: string;
50
+ operation: string;
51
+ modelId: string;
52
+ timestamp: string;
53
+ requestCount: number;
54
+ totalCost: number;
55
+ object?: string | undefined;
56
+ userId?: string | undefined;
57
+ sessionId?: string | undefined;
58
+ metadata?: Record<string, any> | undefined;
59
+ tags?: string[] | undefined;
60
+ recordId?: string | undefined;
61
+ promptTokens?: number | undefined;
62
+ completionTokens?: number | undefined;
63
+ totalTokens?: number | undefined;
64
+ agentId?: string | undefined;
65
+ promptCost?: number | undefined;
66
+ completionCost?: number | undefined;
67
+ }, {
68
+ provider: string;
69
+ id: string;
70
+ operation: string;
71
+ modelId: string;
72
+ timestamp: string;
73
+ totalCost: number;
74
+ object?: string | undefined;
75
+ currency?: string | undefined;
76
+ userId?: string | undefined;
77
+ sessionId?: string | undefined;
78
+ metadata?: Record<string, any> | undefined;
79
+ tags?: string[] | undefined;
80
+ recordId?: string | undefined;
81
+ promptTokens?: number | undefined;
82
+ completionTokens?: number | undefined;
83
+ totalTokens?: number | undefined;
84
+ agentId?: string | undefined;
85
+ requestCount?: number | undefined;
86
+ promptCost?: number | undefined;
87
+ completionCost?: number | undefined;
88
+ }>;
89
+ /**
90
+ * Budget Type
91
+ */
92
+ export declare const BudgetTypeSchema: z.ZodEnum<["global", "user", "agent", "object", "project", "department"]>;
93
+ /**
94
+ * Budget Limit
95
+ */
96
+ export declare const BudgetLimitSchema: z.ZodObject<{
97
+ /** Limit Configuration */
98
+ type: z.ZodEnum<["global", "user", "agent", "object", "project", "department"]>;
99
+ scope: z.ZodOptional<z.ZodString>;
100
+ /** Limit Amount */
101
+ maxCost: z.ZodNumber;
102
+ currency: z.ZodDefault<z.ZodString>;
103
+ /** Period */
104
+ period: z.ZodEnum<["hourly", "daily", "weekly", "monthly", "quarterly", "yearly", "custom"]>;
105
+ customPeriodDays: z.ZodOptional<z.ZodNumber>;
106
+ /** Soft Limits & Warnings */
107
+ softLimit: z.ZodOptional<z.ZodNumber>;
108
+ warnThresholds: z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>;
109
+ /** Enforcement */
110
+ enforced: z.ZodDefault<z.ZodBoolean>;
111
+ gracePeriodSeconds: z.ZodDefault<z.ZodNumber>;
112
+ /** Rollover */
113
+ allowRollover: z.ZodDefault<z.ZodBoolean>;
114
+ maxRolloverPercentage: z.ZodOptional<z.ZodNumber>;
115
+ /** Metadata */
116
+ name: z.ZodOptional<z.ZodString>;
117
+ description: z.ZodOptional<z.ZodString>;
118
+ active: z.ZodDefault<z.ZodBoolean>;
119
+ tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
120
+ }, "strip", z.ZodTypeAny, {
121
+ currency: string;
122
+ type: "object" | "user" | "global" | "agent" | "project" | "department";
123
+ active: boolean;
124
+ maxCost: number;
125
+ period: "custom" | "daily" | "weekly" | "monthly" | "hourly" | "quarterly" | "yearly";
126
+ enforced: boolean;
127
+ gracePeriodSeconds: number;
128
+ allowRollover: boolean;
129
+ name?: string | undefined;
130
+ description?: string | undefined;
131
+ scope?: string | undefined;
132
+ tags?: string[] | undefined;
133
+ customPeriodDays?: number | undefined;
134
+ softLimit?: number | undefined;
135
+ warnThresholds?: number[] | undefined;
136
+ maxRolloverPercentage?: number | undefined;
137
+ }, {
138
+ type: "object" | "user" | "global" | "agent" | "project" | "department";
139
+ maxCost: number;
140
+ period: "custom" | "daily" | "weekly" | "monthly" | "hourly" | "quarterly" | "yearly";
141
+ currency?: string | undefined;
142
+ name?: string | undefined;
143
+ description?: string | undefined;
144
+ active?: boolean | undefined;
145
+ scope?: string | undefined;
146
+ tags?: string[] | undefined;
147
+ customPeriodDays?: number | undefined;
148
+ softLimit?: number | undefined;
149
+ warnThresholds?: number[] | undefined;
150
+ enforced?: boolean | undefined;
151
+ gracePeriodSeconds?: number | undefined;
152
+ allowRollover?: boolean | undefined;
153
+ maxRolloverPercentage?: number | undefined;
154
+ }>;
155
+ /**
156
+ * Budget Status
157
+ */
158
+ export declare const BudgetStatusSchema: z.ZodObject<{
159
+ /** Budget Reference */
160
+ budgetId: z.ZodString;
161
+ type: z.ZodEnum<["global", "user", "agent", "object", "project", "department"]>;
162
+ scope: z.ZodOptional<z.ZodString>;
163
+ /** Current Period */
164
+ periodStart: z.ZodString;
165
+ periodEnd: z.ZodString;
166
+ /** Usage */
167
+ currentCost: z.ZodDefault<z.ZodNumber>;
168
+ maxCost: z.ZodNumber;
169
+ currency: z.ZodDefault<z.ZodString>;
170
+ /** Status */
171
+ percentageUsed: z.ZodNumber;
172
+ remainingCost: z.ZodNumber;
173
+ isExceeded: z.ZodDefault<z.ZodBoolean>;
174
+ isWarning: z.ZodDefault<z.ZodBoolean>;
175
+ /** Projections */
176
+ projectedCost: z.ZodOptional<z.ZodNumber>;
177
+ projectedOverage: z.ZodOptional<z.ZodNumber>;
178
+ /** Last Update */
179
+ lastUpdated: z.ZodString;
180
+ }, "strip", z.ZodTypeAny, {
181
+ currency: string;
182
+ type: "object" | "user" | "global" | "agent" | "project" | "department";
183
+ maxCost: number;
184
+ budgetId: string;
185
+ periodStart: string;
186
+ periodEnd: string;
187
+ currentCost: number;
188
+ percentageUsed: number;
189
+ remainingCost: number;
190
+ isExceeded: boolean;
191
+ isWarning: boolean;
192
+ lastUpdated: string;
193
+ scope?: string | undefined;
194
+ projectedCost?: number | undefined;
195
+ projectedOverage?: number | undefined;
196
+ }, {
197
+ type: "object" | "user" | "global" | "agent" | "project" | "department";
198
+ maxCost: number;
199
+ budgetId: string;
200
+ periodStart: string;
201
+ periodEnd: string;
202
+ percentageUsed: number;
203
+ remainingCost: number;
204
+ lastUpdated: string;
205
+ currency?: string | undefined;
206
+ scope?: string | undefined;
207
+ currentCost?: number | undefined;
208
+ isExceeded?: boolean | undefined;
209
+ isWarning?: boolean | undefined;
210
+ projectedCost?: number | undefined;
211
+ projectedOverage?: number | undefined;
212
+ }>;
213
+ /**
214
+ * Cost Alert Type
215
+ */
216
+ export declare const CostAlertTypeSchema: z.ZodEnum<["threshold_warning", "threshold_critical", "limit_exceeded", "anomaly_detected", "projection_exceeded"]>;
217
+ /**
218
+ * Cost Alert
219
+ */
220
+ export declare const CostAlertSchema: z.ZodObject<{
221
+ /** Alert Details */
222
+ id: z.ZodString;
223
+ timestamp: z.ZodString;
224
+ type: z.ZodEnum<["threshold_warning", "threshold_critical", "limit_exceeded", "anomaly_detected", "projection_exceeded"]>;
225
+ severity: z.ZodEnum<["info", "warning", "critical"]>;
226
+ /** Budget Context */
227
+ budgetId: z.ZodOptional<z.ZodString>;
228
+ budgetType: z.ZodOptional<z.ZodEnum<["global", "user", "agent", "object", "project", "department"]>>;
229
+ scope: z.ZodOptional<z.ZodString>;
230
+ /** Alert Information */
231
+ message: z.ZodString;
232
+ currentCost: z.ZodNumber;
233
+ maxCost: z.ZodOptional<z.ZodNumber>;
234
+ threshold: z.ZodOptional<z.ZodNumber>;
235
+ currency: z.ZodDefault<z.ZodString>;
236
+ /** Recommendations */
237
+ recommendations: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
238
+ /** Status */
239
+ acknowledged: z.ZodDefault<z.ZodBoolean>;
240
+ acknowledgedBy: z.ZodOptional<z.ZodString>;
241
+ acknowledgedAt: z.ZodOptional<z.ZodString>;
242
+ resolved: z.ZodDefault<z.ZodBoolean>;
243
+ /** Metadata */
244
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
245
+ }, "strip", z.ZodTypeAny, {
246
+ currency: string;
247
+ message: string;
248
+ type: "threshold_warning" | "threshold_critical" | "limit_exceeded" | "anomaly_detected" | "projection_exceeded";
249
+ severity: "warning" | "info" | "critical";
250
+ id: string;
251
+ timestamp: string;
252
+ currentCost: number;
253
+ acknowledged: boolean;
254
+ resolved: boolean;
255
+ scope?: string | undefined;
256
+ metadata?: Record<string, any> | undefined;
257
+ threshold?: number | undefined;
258
+ maxCost?: number | undefined;
259
+ budgetId?: string | undefined;
260
+ budgetType?: "object" | "user" | "global" | "agent" | "project" | "department" | undefined;
261
+ recommendations?: string[] | undefined;
262
+ acknowledgedBy?: string | undefined;
263
+ acknowledgedAt?: string | undefined;
264
+ }, {
265
+ message: string;
266
+ type: "threshold_warning" | "threshold_critical" | "limit_exceeded" | "anomaly_detected" | "projection_exceeded";
267
+ severity: "warning" | "info" | "critical";
268
+ id: string;
269
+ timestamp: string;
270
+ currentCost: number;
271
+ currency?: string | undefined;
272
+ scope?: string | undefined;
273
+ metadata?: Record<string, any> | undefined;
274
+ threshold?: number | undefined;
275
+ maxCost?: number | undefined;
276
+ budgetId?: string | undefined;
277
+ budgetType?: "object" | "user" | "global" | "agent" | "project" | "department" | undefined;
278
+ recommendations?: string[] | undefined;
279
+ acknowledged?: boolean | undefined;
280
+ acknowledgedBy?: string | undefined;
281
+ acknowledgedAt?: string | undefined;
282
+ resolved?: boolean | undefined;
283
+ }>;
284
+ /**
285
+ * Cost Breakdown Dimension
286
+ */
287
+ export declare const CostBreakdownDimensionSchema: z.ZodEnum<["model", "provider", "user", "agent", "object", "operation", "date", "hour", "tag"]>;
288
+ /**
289
+ * Cost Breakdown Entry
290
+ */
291
+ export declare const CostBreakdownEntrySchema: z.ZodObject<{
292
+ dimension: z.ZodEnum<["model", "provider", "user", "agent", "object", "operation", "date", "hour", "tag"]>;
293
+ value: z.ZodString;
294
+ /** Metrics */
295
+ totalCost: z.ZodNumber;
296
+ requestCount: z.ZodNumber;
297
+ totalTokens: z.ZodOptional<z.ZodNumber>;
298
+ /** Share */
299
+ percentageOfTotal: z.ZodNumber;
300
+ /** Time Range */
301
+ periodStart: z.ZodOptional<z.ZodString>;
302
+ periodEnd: z.ZodOptional<z.ZodString>;
303
+ }, "strip", z.ZodTypeAny, {
304
+ value: string;
305
+ requestCount: number;
306
+ totalCost: number;
307
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
308
+ percentageOfTotal: number;
309
+ totalTokens?: number | undefined;
310
+ periodStart?: string | undefined;
311
+ periodEnd?: string | undefined;
312
+ }, {
313
+ value: string;
314
+ requestCount: number;
315
+ totalCost: number;
316
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
317
+ percentageOfTotal: number;
318
+ totalTokens?: number | undefined;
319
+ periodStart?: string | undefined;
320
+ periodEnd?: string | undefined;
321
+ }>;
322
+ /**
323
+ * Cost Analytics
324
+ */
325
+ export declare const CostAnalyticsSchema: z.ZodObject<{
326
+ /** Time Range */
327
+ periodStart: z.ZodString;
328
+ periodEnd: z.ZodString;
329
+ /** Summary Metrics */
330
+ totalCost: z.ZodNumber;
331
+ totalRequests: z.ZodNumber;
332
+ totalTokens: z.ZodOptional<z.ZodNumber>;
333
+ currency: z.ZodDefault<z.ZodString>;
334
+ /** Averages */
335
+ averageCostPerRequest: z.ZodNumber;
336
+ averageCostPerToken: z.ZodOptional<z.ZodNumber>;
337
+ averageRequestsPerDay: z.ZodNumber;
338
+ /** Trends */
339
+ costTrend: z.ZodOptional<z.ZodEnum<["increasing", "decreasing", "stable"]>>;
340
+ trendPercentage: z.ZodOptional<z.ZodNumber>;
341
+ /** Breakdowns */
342
+ byModel: z.ZodOptional<z.ZodArray<z.ZodObject<{
343
+ dimension: z.ZodEnum<["model", "provider", "user", "agent", "object", "operation", "date", "hour", "tag"]>;
344
+ value: z.ZodString;
345
+ /** Metrics */
346
+ totalCost: z.ZodNumber;
347
+ requestCount: z.ZodNumber;
348
+ totalTokens: z.ZodOptional<z.ZodNumber>;
349
+ /** Share */
350
+ percentageOfTotal: z.ZodNumber;
351
+ /** Time Range */
352
+ periodStart: z.ZodOptional<z.ZodString>;
353
+ periodEnd: z.ZodOptional<z.ZodString>;
354
+ }, "strip", z.ZodTypeAny, {
355
+ value: string;
356
+ requestCount: number;
357
+ totalCost: number;
358
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
359
+ percentageOfTotal: number;
360
+ totalTokens?: number | undefined;
361
+ periodStart?: string | undefined;
362
+ periodEnd?: string | undefined;
363
+ }, {
364
+ value: string;
365
+ requestCount: number;
366
+ totalCost: number;
367
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
368
+ percentageOfTotal: number;
369
+ totalTokens?: number | undefined;
370
+ periodStart?: string | undefined;
371
+ periodEnd?: string | undefined;
372
+ }>, "many">>;
373
+ byProvider: z.ZodOptional<z.ZodArray<z.ZodObject<{
374
+ dimension: z.ZodEnum<["model", "provider", "user", "agent", "object", "operation", "date", "hour", "tag"]>;
375
+ value: z.ZodString;
376
+ /** Metrics */
377
+ totalCost: z.ZodNumber;
378
+ requestCount: z.ZodNumber;
379
+ totalTokens: z.ZodOptional<z.ZodNumber>;
380
+ /** Share */
381
+ percentageOfTotal: z.ZodNumber;
382
+ /** Time Range */
383
+ periodStart: z.ZodOptional<z.ZodString>;
384
+ periodEnd: z.ZodOptional<z.ZodString>;
385
+ }, "strip", z.ZodTypeAny, {
386
+ value: string;
387
+ requestCount: number;
388
+ totalCost: number;
389
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
390
+ percentageOfTotal: number;
391
+ totalTokens?: number | undefined;
392
+ periodStart?: string | undefined;
393
+ periodEnd?: string | undefined;
394
+ }, {
395
+ value: string;
396
+ requestCount: number;
397
+ totalCost: number;
398
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
399
+ percentageOfTotal: number;
400
+ totalTokens?: number | undefined;
401
+ periodStart?: string | undefined;
402
+ periodEnd?: string | undefined;
403
+ }>, "many">>;
404
+ byUser: z.ZodOptional<z.ZodArray<z.ZodObject<{
405
+ dimension: z.ZodEnum<["model", "provider", "user", "agent", "object", "operation", "date", "hour", "tag"]>;
406
+ value: z.ZodString;
407
+ /** Metrics */
408
+ totalCost: z.ZodNumber;
409
+ requestCount: z.ZodNumber;
410
+ totalTokens: z.ZodOptional<z.ZodNumber>;
411
+ /** Share */
412
+ percentageOfTotal: z.ZodNumber;
413
+ /** Time Range */
414
+ periodStart: z.ZodOptional<z.ZodString>;
415
+ periodEnd: z.ZodOptional<z.ZodString>;
416
+ }, "strip", z.ZodTypeAny, {
417
+ value: string;
418
+ requestCount: number;
419
+ totalCost: number;
420
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
421
+ percentageOfTotal: number;
422
+ totalTokens?: number | undefined;
423
+ periodStart?: string | undefined;
424
+ periodEnd?: string | undefined;
425
+ }, {
426
+ value: string;
427
+ requestCount: number;
428
+ totalCost: number;
429
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
430
+ percentageOfTotal: number;
431
+ totalTokens?: number | undefined;
432
+ periodStart?: string | undefined;
433
+ periodEnd?: string | undefined;
434
+ }>, "many">>;
435
+ byAgent: z.ZodOptional<z.ZodArray<z.ZodObject<{
436
+ dimension: z.ZodEnum<["model", "provider", "user", "agent", "object", "operation", "date", "hour", "tag"]>;
437
+ value: z.ZodString;
438
+ /** Metrics */
439
+ totalCost: z.ZodNumber;
440
+ requestCount: z.ZodNumber;
441
+ totalTokens: z.ZodOptional<z.ZodNumber>;
442
+ /** Share */
443
+ percentageOfTotal: z.ZodNumber;
444
+ /** Time Range */
445
+ periodStart: z.ZodOptional<z.ZodString>;
446
+ periodEnd: z.ZodOptional<z.ZodString>;
447
+ }, "strip", z.ZodTypeAny, {
448
+ value: string;
449
+ requestCount: number;
450
+ totalCost: number;
451
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
452
+ percentageOfTotal: number;
453
+ totalTokens?: number | undefined;
454
+ periodStart?: string | undefined;
455
+ periodEnd?: string | undefined;
456
+ }, {
457
+ value: string;
458
+ requestCount: number;
459
+ totalCost: number;
460
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
461
+ percentageOfTotal: number;
462
+ totalTokens?: number | undefined;
463
+ periodStart?: string | undefined;
464
+ periodEnd?: string | undefined;
465
+ }>, "many">>;
466
+ byOperation: z.ZodOptional<z.ZodArray<z.ZodObject<{
467
+ dimension: z.ZodEnum<["model", "provider", "user", "agent", "object", "operation", "date", "hour", "tag"]>;
468
+ value: z.ZodString;
469
+ /** Metrics */
470
+ totalCost: z.ZodNumber;
471
+ requestCount: z.ZodNumber;
472
+ totalTokens: z.ZodOptional<z.ZodNumber>;
473
+ /** Share */
474
+ percentageOfTotal: z.ZodNumber;
475
+ /** Time Range */
476
+ periodStart: z.ZodOptional<z.ZodString>;
477
+ periodEnd: z.ZodOptional<z.ZodString>;
478
+ }, "strip", z.ZodTypeAny, {
479
+ value: string;
480
+ requestCount: number;
481
+ totalCost: number;
482
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
483
+ percentageOfTotal: number;
484
+ totalTokens?: number | undefined;
485
+ periodStart?: string | undefined;
486
+ periodEnd?: string | undefined;
487
+ }, {
488
+ value: string;
489
+ requestCount: number;
490
+ totalCost: number;
491
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
492
+ percentageOfTotal: number;
493
+ totalTokens?: number | undefined;
494
+ periodStart?: string | undefined;
495
+ periodEnd?: string | undefined;
496
+ }>, "many">>;
497
+ byDate: z.ZodOptional<z.ZodArray<z.ZodObject<{
498
+ dimension: z.ZodEnum<["model", "provider", "user", "agent", "object", "operation", "date", "hour", "tag"]>;
499
+ value: z.ZodString;
500
+ /** Metrics */
501
+ totalCost: z.ZodNumber;
502
+ requestCount: z.ZodNumber;
503
+ totalTokens: z.ZodOptional<z.ZodNumber>;
504
+ /** Share */
505
+ percentageOfTotal: z.ZodNumber;
506
+ /** Time Range */
507
+ periodStart: z.ZodOptional<z.ZodString>;
508
+ periodEnd: z.ZodOptional<z.ZodString>;
509
+ }, "strip", z.ZodTypeAny, {
510
+ value: string;
511
+ requestCount: number;
512
+ totalCost: number;
513
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
514
+ percentageOfTotal: number;
515
+ totalTokens?: number | undefined;
516
+ periodStart?: string | undefined;
517
+ periodEnd?: string | undefined;
518
+ }, {
519
+ value: string;
520
+ requestCount: number;
521
+ totalCost: number;
522
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
523
+ percentageOfTotal: number;
524
+ totalTokens?: number | undefined;
525
+ periodStart?: string | undefined;
526
+ periodEnd?: string | undefined;
527
+ }>, "many">>;
528
+ /** Top Consumers */
529
+ topModels: z.ZodOptional<z.ZodArray<z.ZodObject<{
530
+ dimension: z.ZodEnum<["model", "provider", "user", "agent", "object", "operation", "date", "hour", "tag"]>;
531
+ value: z.ZodString;
532
+ /** Metrics */
533
+ totalCost: z.ZodNumber;
534
+ requestCount: z.ZodNumber;
535
+ totalTokens: z.ZodOptional<z.ZodNumber>;
536
+ /** Share */
537
+ percentageOfTotal: z.ZodNumber;
538
+ /** Time Range */
539
+ periodStart: z.ZodOptional<z.ZodString>;
540
+ periodEnd: z.ZodOptional<z.ZodString>;
541
+ }, "strip", z.ZodTypeAny, {
542
+ value: string;
543
+ requestCount: number;
544
+ totalCost: number;
545
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
546
+ percentageOfTotal: number;
547
+ totalTokens?: number | undefined;
548
+ periodStart?: string | undefined;
549
+ periodEnd?: string | undefined;
550
+ }, {
551
+ value: string;
552
+ requestCount: number;
553
+ totalCost: number;
554
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
555
+ percentageOfTotal: number;
556
+ totalTokens?: number | undefined;
557
+ periodStart?: string | undefined;
558
+ periodEnd?: string | undefined;
559
+ }>, "many">>;
560
+ topUsers: z.ZodOptional<z.ZodArray<z.ZodObject<{
561
+ dimension: z.ZodEnum<["model", "provider", "user", "agent", "object", "operation", "date", "hour", "tag"]>;
562
+ value: z.ZodString;
563
+ /** Metrics */
564
+ totalCost: z.ZodNumber;
565
+ requestCount: z.ZodNumber;
566
+ totalTokens: z.ZodOptional<z.ZodNumber>;
567
+ /** Share */
568
+ percentageOfTotal: z.ZodNumber;
569
+ /** Time Range */
570
+ periodStart: z.ZodOptional<z.ZodString>;
571
+ periodEnd: z.ZodOptional<z.ZodString>;
572
+ }, "strip", z.ZodTypeAny, {
573
+ value: string;
574
+ requestCount: number;
575
+ totalCost: number;
576
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
577
+ percentageOfTotal: number;
578
+ totalTokens?: number | undefined;
579
+ periodStart?: string | undefined;
580
+ periodEnd?: string | undefined;
581
+ }, {
582
+ value: string;
583
+ requestCount: number;
584
+ totalCost: number;
585
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
586
+ percentageOfTotal: number;
587
+ totalTokens?: number | undefined;
588
+ periodStart?: string | undefined;
589
+ periodEnd?: string | undefined;
590
+ }>, "many">>;
591
+ topAgents: z.ZodOptional<z.ZodArray<z.ZodObject<{
592
+ dimension: z.ZodEnum<["model", "provider", "user", "agent", "object", "operation", "date", "hour", "tag"]>;
593
+ value: z.ZodString;
594
+ /** Metrics */
595
+ totalCost: z.ZodNumber;
596
+ requestCount: z.ZodNumber;
597
+ totalTokens: z.ZodOptional<z.ZodNumber>;
598
+ /** Share */
599
+ percentageOfTotal: z.ZodNumber;
600
+ /** Time Range */
601
+ periodStart: z.ZodOptional<z.ZodString>;
602
+ periodEnd: z.ZodOptional<z.ZodString>;
603
+ }, "strip", z.ZodTypeAny, {
604
+ value: string;
605
+ requestCount: number;
606
+ totalCost: number;
607
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
608
+ percentageOfTotal: number;
609
+ totalTokens?: number | undefined;
610
+ periodStart?: string | undefined;
611
+ periodEnd?: string | undefined;
612
+ }, {
613
+ value: string;
614
+ requestCount: number;
615
+ totalCost: number;
616
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
617
+ percentageOfTotal: number;
618
+ totalTokens?: number | undefined;
619
+ periodStart?: string | undefined;
620
+ periodEnd?: string | undefined;
621
+ }>, "many">>;
622
+ /** Efficiency Metrics */
623
+ tokensPerDollar: z.ZodOptional<z.ZodNumber>;
624
+ requestsPerDollar: z.ZodOptional<z.ZodNumber>;
625
+ }, "strip", z.ZodTypeAny, {
626
+ currency: string;
627
+ totalCost: number;
628
+ periodStart: string;
629
+ periodEnd: string;
630
+ totalRequests: number;
631
+ averageCostPerRequest: number;
632
+ averageRequestsPerDay: number;
633
+ totalTokens?: number | undefined;
634
+ averageCostPerToken?: number | undefined;
635
+ costTrend?: "increasing" | "decreasing" | "stable" | undefined;
636
+ trendPercentage?: number | undefined;
637
+ byModel?: {
638
+ value: string;
639
+ requestCount: number;
640
+ totalCost: number;
641
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
642
+ percentageOfTotal: number;
643
+ totalTokens?: number | undefined;
644
+ periodStart?: string | undefined;
645
+ periodEnd?: string | undefined;
646
+ }[] | undefined;
647
+ byProvider?: {
648
+ value: string;
649
+ requestCount: number;
650
+ totalCost: number;
651
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
652
+ percentageOfTotal: number;
653
+ totalTokens?: number | undefined;
654
+ periodStart?: string | undefined;
655
+ periodEnd?: string | undefined;
656
+ }[] | undefined;
657
+ byUser?: {
658
+ value: string;
659
+ requestCount: number;
660
+ totalCost: number;
661
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
662
+ percentageOfTotal: number;
663
+ totalTokens?: number | undefined;
664
+ periodStart?: string | undefined;
665
+ periodEnd?: string | undefined;
666
+ }[] | undefined;
667
+ byAgent?: {
668
+ value: string;
669
+ requestCount: number;
670
+ totalCost: number;
671
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
672
+ percentageOfTotal: number;
673
+ totalTokens?: number | undefined;
674
+ periodStart?: string | undefined;
675
+ periodEnd?: string | undefined;
676
+ }[] | undefined;
677
+ byOperation?: {
678
+ value: string;
679
+ requestCount: number;
680
+ totalCost: number;
681
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
682
+ percentageOfTotal: number;
683
+ totalTokens?: number | undefined;
684
+ periodStart?: string | undefined;
685
+ periodEnd?: string | undefined;
686
+ }[] | undefined;
687
+ byDate?: {
688
+ value: string;
689
+ requestCount: number;
690
+ totalCost: number;
691
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
692
+ percentageOfTotal: number;
693
+ totalTokens?: number | undefined;
694
+ periodStart?: string | undefined;
695
+ periodEnd?: string | undefined;
696
+ }[] | undefined;
697
+ topModels?: {
698
+ value: string;
699
+ requestCount: number;
700
+ totalCost: number;
701
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
702
+ percentageOfTotal: number;
703
+ totalTokens?: number | undefined;
704
+ periodStart?: string | undefined;
705
+ periodEnd?: string | undefined;
706
+ }[] | undefined;
707
+ topUsers?: {
708
+ value: string;
709
+ requestCount: number;
710
+ totalCost: number;
711
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
712
+ percentageOfTotal: number;
713
+ totalTokens?: number | undefined;
714
+ periodStart?: string | undefined;
715
+ periodEnd?: string | undefined;
716
+ }[] | undefined;
717
+ topAgents?: {
718
+ value: string;
719
+ requestCount: number;
720
+ totalCost: number;
721
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
722
+ percentageOfTotal: number;
723
+ totalTokens?: number | undefined;
724
+ periodStart?: string | undefined;
725
+ periodEnd?: string | undefined;
726
+ }[] | undefined;
727
+ tokensPerDollar?: number | undefined;
728
+ requestsPerDollar?: number | undefined;
729
+ }, {
730
+ totalCost: number;
731
+ periodStart: string;
732
+ periodEnd: string;
733
+ totalRequests: number;
734
+ averageCostPerRequest: number;
735
+ averageRequestsPerDay: number;
736
+ currency?: string | undefined;
737
+ totalTokens?: number | undefined;
738
+ averageCostPerToken?: number | undefined;
739
+ costTrend?: "increasing" | "decreasing" | "stable" | undefined;
740
+ trendPercentage?: number | undefined;
741
+ byModel?: {
742
+ value: string;
743
+ requestCount: number;
744
+ totalCost: number;
745
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
746
+ percentageOfTotal: number;
747
+ totalTokens?: number | undefined;
748
+ periodStart?: string | undefined;
749
+ periodEnd?: string | undefined;
750
+ }[] | undefined;
751
+ byProvider?: {
752
+ value: string;
753
+ requestCount: number;
754
+ totalCost: number;
755
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
756
+ percentageOfTotal: number;
757
+ totalTokens?: number | undefined;
758
+ periodStart?: string | undefined;
759
+ periodEnd?: string | undefined;
760
+ }[] | undefined;
761
+ byUser?: {
762
+ value: string;
763
+ requestCount: number;
764
+ totalCost: number;
765
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
766
+ percentageOfTotal: number;
767
+ totalTokens?: number | undefined;
768
+ periodStart?: string | undefined;
769
+ periodEnd?: string | undefined;
770
+ }[] | undefined;
771
+ byAgent?: {
772
+ value: string;
773
+ requestCount: number;
774
+ totalCost: number;
775
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
776
+ percentageOfTotal: number;
777
+ totalTokens?: number | undefined;
778
+ periodStart?: string | undefined;
779
+ periodEnd?: string | undefined;
780
+ }[] | undefined;
781
+ byOperation?: {
782
+ value: string;
783
+ requestCount: number;
784
+ totalCost: number;
785
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
786
+ percentageOfTotal: number;
787
+ totalTokens?: number | undefined;
788
+ periodStart?: string | undefined;
789
+ periodEnd?: string | undefined;
790
+ }[] | undefined;
791
+ byDate?: {
792
+ value: string;
793
+ requestCount: number;
794
+ totalCost: number;
795
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
796
+ percentageOfTotal: number;
797
+ totalTokens?: number | undefined;
798
+ periodStart?: string | undefined;
799
+ periodEnd?: string | undefined;
800
+ }[] | undefined;
801
+ topModels?: {
802
+ value: string;
803
+ requestCount: number;
804
+ totalCost: number;
805
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
806
+ percentageOfTotal: number;
807
+ totalTokens?: number | undefined;
808
+ periodStart?: string | undefined;
809
+ periodEnd?: string | undefined;
810
+ }[] | undefined;
811
+ topUsers?: {
812
+ value: string;
813
+ requestCount: number;
814
+ totalCost: number;
815
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
816
+ percentageOfTotal: number;
817
+ totalTokens?: number | undefined;
818
+ periodStart?: string | undefined;
819
+ periodEnd?: string | undefined;
820
+ }[] | undefined;
821
+ topAgents?: {
822
+ value: string;
823
+ requestCount: number;
824
+ totalCost: number;
825
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
826
+ percentageOfTotal: number;
827
+ totalTokens?: number | undefined;
828
+ periodStart?: string | undefined;
829
+ periodEnd?: string | undefined;
830
+ }[] | undefined;
831
+ tokensPerDollar?: number | undefined;
832
+ requestsPerDollar?: number | undefined;
833
+ }>;
834
+ /**
835
+ * Cost Optimization Recommendation
836
+ */
837
+ export declare const CostOptimizationRecommendationSchema: z.ZodObject<{
838
+ /** Recommendation Details */
839
+ id: z.ZodString;
840
+ type: z.ZodEnum<["switch_model", "reduce_tokens", "batch_requests", "cache_results", "adjust_parameters", "limit_usage"]>;
841
+ /** Impact */
842
+ title: z.ZodString;
843
+ description: z.ZodString;
844
+ estimatedSavings: z.ZodOptional<z.ZodNumber>;
845
+ savingsPercentage: z.ZodOptional<z.ZodNumber>;
846
+ /** Implementation */
847
+ priority: z.ZodEnum<["low", "medium", "high"]>;
848
+ effort: z.ZodEnum<["low", "medium", "high"]>;
849
+ actionable: z.ZodDefault<z.ZodBoolean>;
850
+ actionSteps: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
851
+ /** Context */
852
+ targetModel: z.ZodOptional<z.ZodString>;
853
+ alternativeModel: z.ZodOptional<z.ZodString>;
854
+ affectedUsers: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
855
+ /** Status */
856
+ status: z.ZodDefault<z.ZodEnum<["pending", "accepted", "rejected", "implemented"]>>;
857
+ implementedAt: z.ZodOptional<z.ZodString>;
858
+ }, "strip", z.ZodTypeAny, {
859
+ type: "switch_model" | "reduce_tokens" | "batch_requests" | "cache_results" | "adjust_parameters" | "limit_usage";
860
+ status: "pending" | "accepted" | "rejected" | "implemented";
861
+ description: string;
862
+ priority: "medium" | "low" | "high";
863
+ title: string;
864
+ id: string;
865
+ effort: "medium" | "low" | "high";
866
+ actionable: boolean;
867
+ estimatedSavings?: number | undefined;
868
+ savingsPercentage?: number | undefined;
869
+ actionSteps?: string[] | undefined;
870
+ targetModel?: string | undefined;
871
+ alternativeModel?: string | undefined;
872
+ affectedUsers?: string[] | undefined;
873
+ implementedAt?: string | undefined;
874
+ }, {
875
+ type: "switch_model" | "reduce_tokens" | "batch_requests" | "cache_results" | "adjust_parameters" | "limit_usage";
876
+ description: string;
877
+ priority: "medium" | "low" | "high";
878
+ title: string;
879
+ id: string;
880
+ effort: "medium" | "low" | "high";
881
+ status?: "pending" | "accepted" | "rejected" | "implemented" | undefined;
882
+ estimatedSavings?: number | undefined;
883
+ savingsPercentage?: number | undefined;
884
+ actionable?: boolean | undefined;
885
+ actionSteps?: string[] | undefined;
886
+ targetModel?: string | undefined;
887
+ alternativeModel?: string | undefined;
888
+ affectedUsers?: string[] | undefined;
889
+ implementedAt?: string | undefined;
890
+ }>;
891
+ /**
892
+ * Cost Report
893
+ */
894
+ export declare const CostReportSchema: z.ZodObject<{
895
+ /** Report Metadata */
896
+ id: z.ZodString;
897
+ name: z.ZodString;
898
+ generatedAt: z.ZodString;
899
+ /** Time Range */
900
+ periodStart: z.ZodString;
901
+ periodEnd: z.ZodString;
902
+ period: z.ZodEnum<["hourly", "daily", "weekly", "monthly", "quarterly", "yearly", "custom"]>;
903
+ /** Analytics */
904
+ analytics: z.ZodObject<{
905
+ /** Time Range */
906
+ periodStart: z.ZodString;
907
+ periodEnd: z.ZodString;
908
+ /** Summary Metrics */
909
+ totalCost: z.ZodNumber;
910
+ totalRequests: z.ZodNumber;
911
+ totalTokens: z.ZodOptional<z.ZodNumber>;
912
+ currency: z.ZodDefault<z.ZodString>;
913
+ /** Averages */
914
+ averageCostPerRequest: z.ZodNumber;
915
+ averageCostPerToken: z.ZodOptional<z.ZodNumber>;
916
+ averageRequestsPerDay: z.ZodNumber;
917
+ /** Trends */
918
+ costTrend: z.ZodOptional<z.ZodEnum<["increasing", "decreasing", "stable"]>>;
919
+ trendPercentage: z.ZodOptional<z.ZodNumber>;
920
+ /** Breakdowns */
921
+ byModel: z.ZodOptional<z.ZodArray<z.ZodObject<{
922
+ dimension: z.ZodEnum<["model", "provider", "user", "agent", "object", "operation", "date", "hour", "tag"]>;
923
+ value: z.ZodString;
924
+ /** Metrics */
925
+ totalCost: z.ZodNumber;
926
+ requestCount: z.ZodNumber;
927
+ totalTokens: z.ZodOptional<z.ZodNumber>;
928
+ /** Share */
929
+ percentageOfTotal: z.ZodNumber;
930
+ /** Time Range */
931
+ periodStart: z.ZodOptional<z.ZodString>;
932
+ periodEnd: z.ZodOptional<z.ZodString>;
933
+ }, "strip", z.ZodTypeAny, {
934
+ value: string;
935
+ requestCount: number;
936
+ totalCost: number;
937
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
938
+ percentageOfTotal: number;
939
+ totalTokens?: number | undefined;
940
+ periodStart?: string | undefined;
941
+ periodEnd?: string | undefined;
942
+ }, {
943
+ value: string;
944
+ requestCount: number;
945
+ totalCost: number;
946
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
947
+ percentageOfTotal: number;
948
+ totalTokens?: number | undefined;
949
+ periodStart?: string | undefined;
950
+ periodEnd?: string | undefined;
951
+ }>, "many">>;
952
+ byProvider: z.ZodOptional<z.ZodArray<z.ZodObject<{
953
+ dimension: z.ZodEnum<["model", "provider", "user", "agent", "object", "operation", "date", "hour", "tag"]>;
954
+ value: z.ZodString;
955
+ /** Metrics */
956
+ totalCost: z.ZodNumber;
957
+ requestCount: z.ZodNumber;
958
+ totalTokens: z.ZodOptional<z.ZodNumber>;
959
+ /** Share */
960
+ percentageOfTotal: z.ZodNumber;
961
+ /** Time Range */
962
+ periodStart: z.ZodOptional<z.ZodString>;
963
+ periodEnd: z.ZodOptional<z.ZodString>;
964
+ }, "strip", z.ZodTypeAny, {
965
+ value: string;
966
+ requestCount: number;
967
+ totalCost: number;
968
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
969
+ percentageOfTotal: number;
970
+ totalTokens?: number | undefined;
971
+ periodStart?: string | undefined;
972
+ periodEnd?: string | undefined;
973
+ }, {
974
+ value: string;
975
+ requestCount: number;
976
+ totalCost: number;
977
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
978
+ percentageOfTotal: number;
979
+ totalTokens?: number | undefined;
980
+ periodStart?: string | undefined;
981
+ periodEnd?: string | undefined;
982
+ }>, "many">>;
983
+ byUser: z.ZodOptional<z.ZodArray<z.ZodObject<{
984
+ dimension: z.ZodEnum<["model", "provider", "user", "agent", "object", "operation", "date", "hour", "tag"]>;
985
+ value: z.ZodString;
986
+ /** Metrics */
987
+ totalCost: z.ZodNumber;
988
+ requestCount: z.ZodNumber;
989
+ totalTokens: z.ZodOptional<z.ZodNumber>;
990
+ /** Share */
991
+ percentageOfTotal: z.ZodNumber;
992
+ /** Time Range */
993
+ periodStart: z.ZodOptional<z.ZodString>;
994
+ periodEnd: z.ZodOptional<z.ZodString>;
995
+ }, "strip", z.ZodTypeAny, {
996
+ value: string;
997
+ requestCount: number;
998
+ totalCost: number;
999
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1000
+ percentageOfTotal: number;
1001
+ totalTokens?: number | undefined;
1002
+ periodStart?: string | undefined;
1003
+ periodEnd?: string | undefined;
1004
+ }, {
1005
+ value: string;
1006
+ requestCount: number;
1007
+ totalCost: number;
1008
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1009
+ percentageOfTotal: number;
1010
+ totalTokens?: number | undefined;
1011
+ periodStart?: string | undefined;
1012
+ periodEnd?: string | undefined;
1013
+ }>, "many">>;
1014
+ byAgent: z.ZodOptional<z.ZodArray<z.ZodObject<{
1015
+ dimension: z.ZodEnum<["model", "provider", "user", "agent", "object", "operation", "date", "hour", "tag"]>;
1016
+ value: z.ZodString;
1017
+ /** Metrics */
1018
+ totalCost: z.ZodNumber;
1019
+ requestCount: z.ZodNumber;
1020
+ totalTokens: z.ZodOptional<z.ZodNumber>;
1021
+ /** Share */
1022
+ percentageOfTotal: z.ZodNumber;
1023
+ /** Time Range */
1024
+ periodStart: z.ZodOptional<z.ZodString>;
1025
+ periodEnd: z.ZodOptional<z.ZodString>;
1026
+ }, "strip", z.ZodTypeAny, {
1027
+ value: string;
1028
+ requestCount: number;
1029
+ totalCost: number;
1030
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1031
+ percentageOfTotal: number;
1032
+ totalTokens?: number | undefined;
1033
+ periodStart?: string | undefined;
1034
+ periodEnd?: string | undefined;
1035
+ }, {
1036
+ value: string;
1037
+ requestCount: number;
1038
+ totalCost: number;
1039
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1040
+ percentageOfTotal: number;
1041
+ totalTokens?: number | undefined;
1042
+ periodStart?: string | undefined;
1043
+ periodEnd?: string | undefined;
1044
+ }>, "many">>;
1045
+ byOperation: z.ZodOptional<z.ZodArray<z.ZodObject<{
1046
+ dimension: z.ZodEnum<["model", "provider", "user", "agent", "object", "operation", "date", "hour", "tag"]>;
1047
+ value: z.ZodString;
1048
+ /** Metrics */
1049
+ totalCost: z.ZodNumber;
1050
+ requestCount: z.ZodNumber;
1051
+ totalTokens: z.ZodOptional<z.ZodNumber>;
1052
+ /** Share */
1053
+ percentageOfTotal: z.ZodNumber;
1054
+ /** Time Range */
1055
+ periodStart: z.ZodOptional<z.ZodString>;
1056
+ periodEnd: z.ZodOptional<z.ZodString>;
1057
+ }, "strip", z.ZodTypeAny, {
1058
+ value: string;
1059
+ requestCount: number;
1060
+ totalCost: number;
1061
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1062
+ percentageOfTotal: number;
1063
+ totalTokens?: number | undefined;
1064
+ periodStart?: string | undefined;
1065
+ periodEnd?: string | undefined;
1066
+ }, {
1067
+ value: string;
1068
+ requestCount: number;
1069
+ totalCost: number;
1070
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1071
+ percentageOfTotal: number;
1072
+ totalTokens?: number | undefined;
1073
+ periodStart?: string | undefined;
1074
+ periodEnd?: string | undefined;
1075
+ }>, "many">>;
1076
+ byDate: z.ZodOptional<z.ZodArray<z.ZodObject<{
1077
+ dimension: z.ZodEnum<["model", "provider", "user", "agent", "object", "operation", "date", "hour", "tag"]>;
1078
+ value: z.ZodString;
1079
+ /** Metrics */
1080
+ totalCost: z.ZodNumber;
1081
+ requestCount: z.ZodNumber;
1082
+ totalTokens: z.ZodOptional<z.ZodNumber>;
1083
+ /** Share */
1084
+ percentageOfTotal: z.ZodNumber;
1085
+ /** Time Range */
1086
+ periodStart: z.ZodOptional<z.ZodString>;
1087
+ periodEnd: z.ZodOptional<z.ZodString>;
1088
+ }, "strip", z.ZodTypeAny, {
1089
+ value: string;
1090
+ requestCount: number;
1091
+ totalCost: number;
1092
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1093
+ percentageOfTotal: number;
1094
+ totalTokens?: number | undefined;
1095
+ periodStart?: string | undefined;
1096
+ periodEnd?: string | undefined;
1097
+ }, {
1098
+ value: string;
1099
+ requestCount: number;
1100
+ totalCost: number;
1101
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1102
+ percentageOfTotal: number;
1103
+ totalTokens?: number | undefined;
1104
+ periodStart?: string | undefined;
1105
+ periodEnd?: string | undefined;
1106
+ }>, "many">>;
1107
+ /** Top Consumers */
1108
+ topModels: z.ZodOptional<z.ZodArray<z.ZodObject<{
1109
+ dimension: z.ZodEnum<["model", "provider", "user", "agent", "object", "operation", "date", "hour", "tag"]>;
1110
+ value: z.ZodString;
1111
+ /** Metrics */
1112
+ totalCost: z.ZodNumber;
1113
+ requestCount: z.ZodNumber;
1114
+ totalTokens: z.ZodOptional<z.ZodNumber>;
1115
+ /** Share */
1116
+ percentageOfTotal: z.ZodNumber;
1117
+ /** Time Range */
1118
+ periodStart: z.ZodOptional<z.ZodString>;
1119
+ periodEnd: z.ZodOptional<z.ZodString>;
1120
+ }, "strip", z.ZodTypeAny, {
1121
+ value: string;
1122
+ requestCount: number;
1123
+ totalCost: number;
1124
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1125
+ percentageOfTotal: number;
1126
+ totalTokens?: number | undefined;
1127
+ periodStart?: string | undefined;
1128
+ periodEnd?: string | undefined;
1129
+ }, {
1130
+ value: string;
1131
+ requestCount: number;
1132
+ totalCost: number;
1133
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1134
+ percentageOfTotal: number;
1135
+ totalTokens?: number | undefined;
1136
+ periodStart?: string | undefined;
1137
+ periodEnd?: string | undefined;
1138
+ }>, "many">>;
1139
+ topUsers: z.ZodOptional<z.ZodArray<z.ZodObject<{
1140
+ dimension: z.ZodEnum<["model", "provider", "user", "agent", "object", "operation", "date", "hour", "tag"]>;
1141
+ value: z.ZodString;
1142
+ /** Metrics */
1143
+ totalCost: z.ZodNumber;
1144
+ requestCount: z.ZodNumber;
1145
+ totalTokens: z.ZodOptional<z.ZodNumber>;
1146
+ /** Share */
1147
+ percentageOfTotal: z.ZodNumber;
1148
+ /** Time Range */
1149
+ periodStart: z.ZodOptional<z.ZodString>;
1150
+ periodEnd: z.ZodOptional<z.ZodString>;
1151
+ }, "strip", z.ZodTypeAny, {
1152
+ value: string;
1153
+ requestCount: number;
1154
+ totalCost: number;
1155
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1156
+ percentageOfTotal: number;
1157
+ totalTokens?: number | undefined;
1158
+ periodStart?: string | undefined;
1159
+ periodEnd?: string | undefined;
1160
+ }, {
1161
+ value: string;
1162
+ requestCount: number;
1163
+ totalCost: number;
1164
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1165
+ percentageOfTotal: number;
1166
+ totalTokens?: number | undefined;
1167
+ periodStart?: string | undefined;
1168
+ periodEnd?: string | undefined;
1169
+ }>, "many">>;
1170
+ topAgents: z.ZodOptional<z.ZodArray<z.ZodObject<{
1171
+ dimension: z.ZodEnum<["model", "provider", "user", "agent", "object", "operation", "date", "hour", "tag"]>;
1172
+ value: z.ZodString;
1173
+ /** Metrics */
1174
+ totalCost: z.ZodNumber;
1175
+ requestCount: z.ZodNumber;
1176
+ totalTokens: z.ZodOptional<z.ZodNumber>;
1177
+ /** Share */
1178
+ percentageOfTotal: z.ZodNumber;
1179
+ /** Time Range */
1180
+ periodStart: z.ZodOptional<z.ZodString>;
1181
+ periodEnd: z.ZodOptional<z.ZodString>;
1182
+ }, "strip", z.ZodTypeAny, {
1183
+ value: string;
1184
+ requestCount: number;
1185
+ totalCost: number;
1186
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1187
+ percentageOfTotal: number;
1188
+ totalTokens?: number | undefined;
1189
+ periodStart?: string | undefined;
1190
+ periodEnd?: string | undefined;
1191
+ }, {
1192
+ value: string;
1193
+ requestCount: number;
1194
+ totalCost: number;
1195
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1196
+ percentageOfTotal: number;
1197
+ totalTokens?: number | undefined;
1198
+ periodStart?: string | undefined;
1199
+ periodEnd?: string | undefined;
1200
+ }>, "many">>;
1201
+ /** Efficiency Metrics */
1202
+ tokensPerDollar: z.ZodOptional<z.ZodNumber>;
1203
+ requestsPerDollar: z.ZodOptional<z.ZodNumber>;
1204
+ }, "strip", z.ZodTypeAny, {
1205
+ currency: string;
1206
+ totalCost: number;
1207
+ periodStart: string;
1208
+ periodEnd: string;
1209
+ totalRequests: number;
1210
+ averageCostPerRequest: number;
1211
+ averageRequestsPerDay: number;
1212
+ totalTokens?: number | undefined;
1213
+ averageCostPerToken?: number | undefined;
1214
+ costTrend?: "increasing" | "decreasing" | "stable" | undefined;
1215
+ trendPercentage?: number | undefined;
1216
+ byModel?: {
1217
+ value: string;
1218
+ requestCount: number;
1219
+ totalCost: number;
1220
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1221
+ percentageOfTotal: number;
1222
+ totalTokens?: number | undefined;
1223
+ periodStart?: string | undefined;
1224
+ periodEnd?: string | undefined;
1225
+ }[] | undefined;
1226
+ byProvider?: {
1227
+ value: string;
1228
+ requestCount: number;
1229
+ totalCost: number;
1230
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1231
+ percentageOfTotal: number;
1232
+ totalTokens?: number | undefined;
1233
+ periodStart?: string | undefined;
1234
+ periodEnd?: string | undefined;
1235
+ }[] | undefined;
1236
+ byUser?: {
1237
+ value: string;
1238
+ requestCount: number;
1239
+ totalCost: number;
1240
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1241
+ percentageOfTotal: number;
1242
+ totalTokens?: number | undefined;
1243
+ periodStart?: string | undefined;
1244
+ periodEnd?: string | undefined;
1245
+ }[] | undefined;
1246
+ byAgent?: {
1247
+ value: string;
1248
+ requestCount: number;
1249
+ totalCost: number;
1250
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1251
+ percentageOfTotal: number;
1252
+ totalTokens?: number | undefined;
1253
+ periodStart?: string | undefined;
1254
+ periodEnd?: string | undefined;
1255
+ }[] | undefined;
1256
+ byOperation?: {
1257
+ value: string;
1258
+ requestCount: number;
1259
+ totalCost: number;
1260
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1261
+ percentageOfTotal: number;
1262
+ totalTokens?: number | undefined;
1263
+ periodStart?: string | undefined;
1264
+ periodEnd?: string | undefined;
1265
+ }[] | undefined;
1266
+ byDate?: {
1267
+ value: string;
1268
+ requestCount: number;
1269
+ totalCost: number;
1270
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1271
+ percentageOfTotal: number;
1272
+ totalTokens?: number | undefined;
1273
+ periodStart?: string | undefined;
1274
+ periodEnd?: string | undefined;
1275
+ }[] | undefined;
1276
+ topModels?: {
1277
+ value: string;
1278
+ requestCount: number;
1279
+ totalCost: number;
1280
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1281
+ percentageOfTotal: number;
1282
+ totalTokens?: number | undefined;
1283
+ periodStart?: string | undefined;
1284
+ periodEnd?: string | undefined;
1285
+ }[] | undefined;
1286
+ topUsers?: {
1287
+ value: string;
1288
+ requestCount: number;
1289
+ totalCost: number;
1290
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1291
+ percentageOfTotal: number;
1292
+ totalTokens?: number | undefined;
1293
+ periodStart?: string | undefined;
1294
+ periodEnd?: string | undefined;
1295
+ }[] | undefined;
1296
+ topAgents?: {
1297
+ value: string;
1298
+ requestCount: number;
1299
+ totalCost: number;
1300
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1301
+ percentageOfTotal: number;
1302
+ totalTokens?: number | undefined;
1303
+ periodStart?: string | undefined;
1304
+ periodEnd?: string | undefined;
1305
+ }[] | undefined;
1306
+ tokensPerDollar?: number | undefined;
1307
+ requestsPerDollar?: number | undefined;
1308
+ }, {
1309
+ totalCost: number;
1310
+ periodStart: string;
1311
+ periodEnd: string;
1312
+ totalRequests: number;
1313
+ averageCostPerRequest: number;
1314
+ averageRequestsPerDay: number;
1315
+ currency?: string | undefined;
1316
+ totalTokens?: number | undefined;
1317
+ averageCostPerToken?: number | undefined;
1318
+ costTrend?: "increasing" | "decreasing" | "stable" | undefined;
1319
+ trendPercentage?: number | undefined;
1320
+ byModel?: {
1321
+ value: string;
1322
+ requestCount: number;
1323
+ totalCost: number;
1324
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1325
+ percentageOfTotal: number;
1326
+ totalTokens?: number | undefined;
1327
+ periodStart?: string | undefined;
1328
+ periodEnd?: string | undefined;
1329
+ }[] | undefined;
1330
+ byProvider?: {
1331
+ value: string;
1332
+ requestCount: number;
1333
+ totalCost: number;
1334
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1335
+ percentageOfTotal: number;
1336
+ totalTokens?: number | undefined;
1337
+ periodStart?: string | undefined;
1338
+ periodEnd?: string | undefined;
1339
+ }[] | undefined;
1340
+ byUser?: {
1341
+ value: string;
1342
+ requestCount: number;
1343
+ totalCost: number;
1344
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1345
+ percentageOfTotal: number;
1346
+ totalTokens?: number | undefined;
1347
+ periodStart?: string | undefined;
1348
+ periodEnd?: string | undefined;
1349
+ }[] | undefined;
1350
+ byAgent?: {
1351
+ value: string;
1352
+ requestCount: number;
1353
+ totalCost: number;
1354
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1355
+ percentageOfTotal: number;
1356
+ totalTokens?: number | undefined;
1357
+ periodStart?: string | undefined;
1358
+ periodEnd?: string | undefined;
1359
+ }[] | undefined;
1360
+ byOperation?: {
1361
+ value: string;
1362
+ requestCount: number;
1363
+ totalCost: number;
1364
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1365
+ percentageOfTotal: number;
1366
+ totalTokens?: number | undefined;
1367
+ periodStart?: string | undefined;
1368
+ periodEnd?: string | undefined;
1369
+ }[] | undefined;
1370
+ byDate?: {
1371
+ value: string;
1372
+ requestCount: number;
1373
+ totalCost: number;
1374
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1375
+ percentageOfTotal: number;
1376
+ totalTokens?: number | undefined;
1377
+ periodStart?: string | undefined;
1378
+ periodEnd?: string | undefined;
1379
+ }[] | undefined;
1380
+ topModels?: {
1381
+ value: string;
1382
+ requestCount: number;
1383
+ totalCost: number;
1384
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1385
+ percentageOfTotal: number;
1386
+ totalTokens?: number | undefined;
1387
+ periodStart?: string | undefined;
1388
+ periodEnd?: string | undefined;
1389
+ }[] | undefined;
1390
+ topUsers?: {
1391
+ value: string;
1392
+ requestCount: number;
1393
+ totalCost: number;
1394
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1395
+ percentageOfTotal: number;
1396
+ totalTokens?: number | undefined;
1397
+ periodStart?: string | undefined;
1398
+ periodEnd?: string | undefined;
1399
+ }[] | undefined;
1400
+ topAgents?: {
1401
+ value: string;
1402
+ requestCount: number;
1403
+ totalCost: number;
1404
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1405
+ percentageOfTotal: number;
1406
+ totalTokens?: number | undefined;
1407
+ periodStart?: string | undefined;
1408
+ periodEnd?: string | undefined;
1409
+ }[] | undefined;
1410
+ tokensPerDollar?: number | undefined;
1411
+ requestsPerDollar?: number | undefined;
1412
+ }>;
1413
+ /** Budgets */
1414
+ budgets: z.ZodOptional<z.ZodArray<z.ZodObject<{
1415
+ /** Budget Reference */
1416
+ budgetId: z.ZodString;
1417
+ type: z.ZodEnum<["global", "user", "agent", "object", "project", "department"]>;
1418
+ scope: z.ZodOptional<z.ZodString>;
1419
+ /** Current Period */
1420
+ periodStart: z.ZodString;
1421
+ periodEnd: z.ZodString;
1422
+ /** Usage */
1423
+ currentCost: z.ZodDefault<z.ZodNumber>;
1424
+ maxCost: z.ZodNumber;
1425
+ currency: z.ZodDefault<z.ZodString>;
1426
+ /** Status */
1427
+ percentageUsed: z.ZodNumber;
1428
+ remainingCost: z.ZodNumber;
1429
+ isExceeded: z.ZodDefault<z.ZodBoolean>;
1430
+ isWarning: z.ZodDefault<z.ZodBoolean>;
1431
+ /** Projections */
1432
+ projectedCost: z.ZodOptional<z.ZodNumber>;
1433
+ projectedOverage: z.ZodOptional<z.ZodNumber>;
1434
+ /** Last Update */
1435
+ lastUpdated: z.ZodString;
1436
+ }, "strip", z.ZodTypeAny, {
1437
+ currency: string;
1438
+ type: "object" | "user" | "global" | "agent" | "project" | "department";
1439
+ maxCost: number;
1440
+ budgetId: string;
1441
+ periodStart: string;
1442
+ periodEnd: string;
1443
+ currentCost: number;
1444
+ percentageUsed: number;
1445
+ remainingCost: number;
1446
+ isExceeded: boolean;
1447
+ isWarning: boolean;
1448
+ lastUpdated: string;
1449
+ scope?: string | undefined;
1450
+ projectedCost?: number | undefined;
1451
+ projectedOverage?: number | undefined;
1452
+ }, {
1453
+ type: "object" | "user" | "global" | "agent" | "project" | "department";
1454
+ maxCost: number;
1455
+ budgetId: string;
1456
+ periodStart: string;
1457
+ periodEnd: string;
1458
+ percentageUsed: number;
1459
+ remainingCost: number;
1460
+ lastUpdated: string;
1461
+ currency?: string | undefined;
1462
+ scope?: string | undefined;
1463
+ currentCost?: number | undefined;
1464
+ isExceeded?: boolean | undefined;
1465
+ isWarning?: boolean | undefined;
1466
+ projectedCost?: number | undefined;
1467
+ projectedOverage?: number | undefined;
1468
+ }>, "many">>;
1469
+ /** Alerts */
1470
+ alerts: z.ZodOptional<z.ZodArray<z.ZodObject<{
1471
+ /** Alert Details */
1472
+ id: z.ZodString;
1473
+ timestamp: z.ZodString;
1474
+ type: z.ZodEnum<["threshold_warning", "threshold_critical", "limit_exceeded", "anomaly_detected", "projection_exceeded"]>;
1475
+ severity: z.ZodEnum<["info", "warning", "critical"]>;
1476
+ /** Budget Context */
1477
+ budgetId: z.ZodOptional<z.ZodString>;
1478
+ budgetType: z.ZodOptional<z.ZodEnum<["global", "user", "agent", "object", "project", "department"]>>;
1479
+ scope: z.ZodOptional<z.ZodString>;
1480
+ /** Alert Information */
1481
+ message: z.ZodString;
1482
+ currentCost: z.ZodNumber;
1483
+ maxCost: z.ZodOptional<z.ZodNumber>;
1484
+ threshold: z.ZodOptional<z.ZodNumber>;
1485
+ currency: z.ZodDefault<z.ZodString>;
1486
+ /** Recommendations */
1487
+ recommendations: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1488
+ /** Status */
1489
+ acknowledged: z.ZodDefault<z.ZodBoolean>;
1490
+ acknowledgedBy: z.ZodOptional<z.ZodString>;
1491
+ acknowledgedAt: z.ZodOptional<z.ZodString>;
1492
+ resolved: z.ZodDefault<z.ZodBoolean>;
1493
+ /** Metadata */
1494
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
1495
+ }, "strip", z.ZodTypeAny, {
1496
+ currency: string;
1497
+ message: string;
1498
+ type: "threshold_warning" | "threshold_critical" | "limit_exceeded" | "anomaly_detected" | "projection_exceeded";
1499
+ severity: "warning" | "info" | "critical";
1500
+ id: string;
1501
+ timestamp: string;
1502
+ currentCost: number;
1503
+ acknowledged: boolean;
1504
+ resolved: boolean;
1505
+ scope?: string | undefined;
1506
+ metadata?: Record<string, any> | undefined;
1507
+ threshold?: number | undefined;
1508
+ maxCost?: number | undefined;
1509
+ budgetId?: string | undefined;
1510
+ budgetType?: "object" | "user" | "global" | "agent" | "project" | "department" | undefined;
1511
+ recommendations?: string[] | undefined;
1512
+ acknowledgedBy?: string | undefined;
1513
+ acknowledgedAt?: string | undefined;
1514
+ }, {
1515
+ message: string;
1516
+ type: "threshold_warning" | "threshold_critical" | "limit_exceeded" | "anomaly_detected" | "projection_exceeded";
1517
+ severity: "warning" | "info" | "critical";
1518
+ id: string;
1519
+ timestamp: string;
1520
+ currentCost: number;
1521
+ currency?: string | undefined;
1522
+ scope?: string | undefined;
1523
+ metadata?: Record<string, any> | undefined;
1524
+ threshold?: number | undefined;
1525
+ maxCost?: number | undefined;
1526
+ budgetId?: string | undefined;
1527
+ budgetType?: "object" | "user" | "global" | "agent" | "project" | "department" | undefined;
1528
+ recommendations?: string[] | undefined;
1529
+ acknowledged?: boolean | undefined;
1530
+ acknowledgedBy?: string | undefined;
1531
+ acknowledgedAt?: string | undefined;
1532
+ resolved?: boolean | undefined;
1533
+ }>, "many">>;
1534
+ activeAlertCount: z.ZodDefault<z.ZodNumber>;
1535
+ /** Recommendations */
1536
+ recommendations: z.ZodOptional<z.ZodArray<z.ZodObject<{
1537
+ /** Recommendation Details */
1538
+ id: z.ZodString;
1539
+ type: z.ZodEnum<["switch_model", "reduce_tokens", "batch_requests", "cache_results", "adjust_parameters", "limit_usage"]>;
1540
+ /** Impact */
1541
+ title: z.ZodString;
1542
+ description: z.ZodString;
1543
+ estimatedSavings: z.ZodOptional<z.ZodNumber>;
1544
+ savingsPercentage: z.ZodOptional<z.ZodNumber>;
1545
+ /** Implementation */
1546
+ priority: z.ZodEnum<["low", "medium", "high"]>;
1547
+ effort: z.ZodEnum<["low", "medium", "high"]>;
1548
+ actionable: z.ZodDefault<z.ZodBoolean>;
1549
+ actionSteps: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1550
+ /** Context */
1551
+ targetModel: z.ZodOptional<z.ZodString>;
1552
+ alternativeModel: z.ZodOptional<z.ZodString>;
1553
+ affectedUsers: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1554
+ /** Status */
1555
+ status: z.ZodDefault<z.ZodEnum<["pending", "accepted", "rejected", "implemented"]>>;
1556
+ implementedAt: z.ZodOptional<z.ZodString>;
1557
+ }, "strip", z.ZodTypeAny, {
1558
+ type: "switch_model" | "reduce_tokens" | "batch_requests" | "cache_results" | "adjust_parameters" | "limit_usage";
1559
+ status: "pending" | "accepted" | "rejected" | "implemented";
1560
+ description: string;
1561
+ priority: "medium" | "low" | "high";
1562
+ title: string;
1563
+ id: string;
1564
+ effort: "medium" | "low" | "high";
1565
+ actionable: boolean;
1566
+ estimatedSavings?: number | undefined;
1567
+ savingsPercentage?: number | undefined;
1568
+ actionSteps?: string[] | undefined;
1569
+ targetModel?: string | undefined;
1570
+ alternativeModel?: string | undefined;
1571
+ affectedUsers?: string[] | undefined;
1572
+ implementedAt?: string | undefined;
1573
+ }, {
1574
+ type: "switch_model" | "reduce_tokens" | "batch_requests" | "cache_results" | "adjust_parameters" | "limit_usage";
1575
+ description: string;
1576
+ priority: "medium" | "low" | "high";
1577
+ title: string;
1578
+ id: string;
1579
+ effort: "medium" | "low" | "high";
1580
+ status?: "pending" | "accepted" | "rejected" | "implemented" | undefined;
1581
+ estimatedSavings?: number | undefined;
1582
+ savingsPercentage?: number | undefined;
1583
+ actionable?: boolean | undefined;
1584
+ actionSteps?: string[] | undefined;
1585
+ targetModel?: string | undefined;
1586
+ alternativeModel?: string | undefined;
1587
+ affectedUsers?: string[] | undefined;
1588
+ implementedAt?: string | undefined;
1589
+ }>, "many">>;
1590
+ /** Comparisons */
1591
+ previousPeriodCost: z.ZodOptional<z.ZodNumber>;
1592
+ costChange: z.ZodOptional<z.ZodNumber>;
1593
+ costChangePercentage: z.ZodOptional<z.ZodNumber>;
1594
+ /** Forecasting */
1595
+ forecastedCost: z.ZodOptional<z.ZodNumber>;
1596
+ forecastedBudgetStatus: z.ZodOptional<z.ZodEnum<["under", "at", "over"]>>;
1597
+ /** Export */
1598
+ format: z.ZodDefault<z.ZodEnum<["summary", "detailed", "executive"]>>;
1599
+ currency: z.ZodDefault<z.ZodString>;
1600
+ }, "strip", z.ZodTypeAny, {
1601
+ currency: string;
1602
+ name: string;
1603
+ format: "summary" | "detailed" | "executive";
1604
+ id: string;
1605
+ generatedAt: string;
1606
+ period: "custom" | "daily" | "weekly" | "monthly" | "hourly" | "quarterly" | "yearly";
1607
+ periodStart: string;
1608
+ periodEnd: string;
1609
+ analytics: {
1610
+ currency: string;
1611
+ totalCost: number;
1612
+ periodStart: string;
1613
+ periodEnd: string;
1614
+ totalRequests: number;
1615
+ averageCostPerRequest: number;
1616
+ averageRequestsPerDay: number;
1617
+ totalTokens?: number | undefined;
1618
+ averageCostPerToken?: number | undefined;
1619
+ costTrend?: "increasing" | "decreasing" | "stable" | undefined;
1620
+ trendPercentage?: number | undefined;
1621
+ byModel?: {
1622
+ value: string;
1623
+ requestCount: number;
1624
+ totalCost: number;
1625
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1626
+ percentageOfTotal: number;
1627
+ totalTokens?: number | undefined;
1628
+ periodStart?: string | undefined;
1629
+ periodEnd?: string | undefined;
1630
+ }[] | undefined;
1631
+ byProvider?: {
1632
+ value: string;
1633
+ requestCount: number;
1634
+ totalCost: number;
1635
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1636
+ percentageOfTotal: number;
1637
+ totalTokens?: number | undefined;
1638
+ periodStart?: string | undefined;
1639
+ periodEnd?: string | undefined;
1640
+ }[] | undefined;
1641
+ byUser?: {
1642
+ value: string;
1643
+ requestCount: number;
1644
+ totalCost: number;
1645
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1646
+ percentageOfTotal: number;
1647
+ totalTokens?: number | undefined;
1648
+ periodStart?: string | undefined;
1649
+ periodEnd?: string | undefined;
1650
+ }[] | undefined;
1651
+ byAgent?: {
1652
+ value: string;
1653
+ requestCount: number;
1654
+ totalCost: number;
1655
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1656
+ percentageOfTotal: number;
1657
+ totalTokens?: number | undefined;
1658
+ periodStart?: string | undefined;
1659
+ periodEnd?: string | undefined;
1660
+ }[] | undefined;
1661
+ byOperation?: {
1662
+ value: string;
1663
+ requestCount: number;
1664
+ totalCost: number;
1665
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1666
+ percentageOfTotal: number;
1667
+ totalTokens?: number | undefined;
1668
+ periodStart?: string | undefined;
1669
+ periodEnd?: string | undefined;
1670
+ }[] | undefined;
1671
+ byDate?: {
1672
+ value: string;
1673
+ requestCount: number;
1674
+ totalCost: number;
1675
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1676
+ percentageOfTotal: number;
1677
+ totalTokens?: number | undefined;
1678
+ periodStart?: string | undefined;
1679
+ periodEnd?: string | undefined;
1680
+ }[] | undefined;
1681
+ topModels?: {
1682
+ value: string;
1683
+ requestCount: number;
1684
+ totalCost: number;
1685
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1686
+ percentageOfTotal: number;
1687
+ totalTokens?: number | undefined;
1688
+ periodStart?: string | undefined;
1689
+ periodEnd?: string | undefined;
1690
+ }[] | undefined;
1691
+ topUsers?: {
1692
+ value: string;
1693
+ requestCount: number;
1694
+ totalCost: number;
1695
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1696
+ percentageOfTotal: number;
1697
+ totalTokens?: number | undefined;
1698
+ periodStart?: string | undefined;
1699
+ periodEnd?: string | undefined;
1700
+ }[] | undefined;
1701
+ topAgents?: {
1702
+ value: string;
1703
+ requestCount: number;
1704
+ totalCost: number;
1705
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1706
+ percentageOfTotal: number;
1707
+ totalTokens?: number | undefined;
1708
+ periodStart?: string | undefined;
1709
+ periodEnd?: string | undefined;
1710
+ }[] | undefined;
1711
+ tokensPerDollar?: number | undefined;
1712
+ requestsPerDollar?: number | undefined;
1713
+ };
1714
+ activeAlertCount: number;
1715
+ recommendations?: {
1716
+ type: "switch_model" | "reduce_tokens" | "batch_requests" | "cache_results" | "adjust_parameters" | "limit_usage";
1717
+ status: "pending" | "accepted" | "rejected" | "implemented";
1718
+ description: string;
1719
+ priority: "medium" | "low" | "high";
1720
+ title: string;
1721
+ id: string;
1722
+ effort: "medium" | "low" | "high";
1723
+ actionable: boolean;
1724
+ estimatedSavings?: number | undefined;
1725
+ savingsPercentage?: number | undefined;
1726
+ actionSteps?: string[] | undefined;
1727
+ targetModel?: string | undefined;
1728
+ alternativeModel?: string | undefined;
1729
+ affectedUsers?: string[] | undefined;
1730
+ implementedAt?: string | undefined;
1731
+ }[] | undefined;
1732
+ budgets?: {
1733
+ currency: string;
1734
+ type: "object" | "user" | "global" | "agent" | "project" | "department";
1735
+ maxCost: number;
1736
+ budgetId: string;
1737
+ periodStart: string;
1738
+ periodEnd: string;
1739
+ currentCost: number;
1740
+ percentageUsed: number;
1741
+ remainingCost: number;
1742
+ isExceeded: boolean;
1743
+ isWarning: boolean;
1744
+ lastUpdated: string;
1745
+ scope?: string | undefined;
1746
+ projectedCost?: number | undefined;
1747
+ projectedOverage?: number | undefined;
1748
+ }[] | undefined;
1749
+ alerts?: {
1750
+ currency: string;
1751
+ message: string;
1752
+ type: "threshold_warning" | "threshold_critical" | "limit_exceeded" | "anomaly_detected" | "projection_exceeded";
1753
+ severity: "warning" | "info" | "critical";
1754
+ id: string;
1755
+ timestamp: string;
1756
+ currentCost: number;
1757
+ acknowledged: boolean;
1758
+ resolved: boolean;
1759
+ scope?: string | undefined;
1760
+ metadata?: Record<string, any> | undefined;
1761
+ threshold?: number | undefined;
1762
+ maxCost?: number | undefined;
1763
+ budgetId?: string | undefined;
1764
+ budgetType?: "object" | "user" | "global" | "agent" | "project" | "department" | undefined;
1765
+ recommendations?: string[] | undefined;
1766
+ acknowledgedBy?: string | undefined;
1767
+ acknowledgedAt?: string | undefined;
1768
+ }[] | undefined;
1769
+ previousPeriodCost?: number | undefined;
1770
+ costChange?: number | undefined;
1771
+ costChangePercentage?: number | undefined;
1772
+ forecastedCost?: number | undefined;
1773
+ forecastedBudgetStatus?: "at" | "over" | "under" | undefined;
1774
+ }, {
1775
+ name: string;
1776
+ id: string;
1777
+ generatedAt: string;
1778
+ period: "custom" | "daily" | "weekly" | "monthly" | "hourly" | "quarterly" | "yearly";
1779
+ periodStart: string;
1780
+ periodEnd: string;
1781
+ analytics: {
1782
+ totalCost: number;
1783
+ periodStart: string;
1784
+ periodEnd: string;
1785
+ totalRequests: number;
1786
+ averageCostPerRequest: number;
1787
+ averageRequestsPerDay: number;
1788
+ currency?: string | undefined;
1789
+ totalTokens?: number | undefined;
1790
+ averageCostPerToken?: number | undefined;
1791
+ costTrend?: "increasing" | "decreasing" | "stable" | undefined;
1792
+ trendPercentage?: number | undefined;
1793
+ byModel?: {
1794
+ value: string;
1795
+ requestCount: number;
1796
+ totalCost: number;
1797
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1798
+ percentageOfTotal: number;
1799
+ totalTokens?: number | undefined;
1800
+ periodStart?: string | undefined;
1801
+ periodEnd?: string | undefined;
1802
+ }[] | undefined;
1803
+ byProvider?: {
1804
+ value: string;
1805
+ requestCount: number;
1806
+ totalCost: number;
1807
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1808
+ percentageOfTotal: number;
1809
+ totalTokens?: number | undefined;
1810
+ periodStart?: string | undefined;
1811
+ periodEnd?: string | undefined;
1812
+ }[] | undefined;
1813
+ byUser?: {
1814
+ value: string;
1815
+ requestCount: number;
1816
+ totalCost: number;
1817
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1818
+ percentageOfTotal: number;
1819
+ totalTokens?: number | undefined;
1820
+ periodStart?: string | undefined;
1821
+ periodEnd?: string | undefined;
1822
+ }[] | undefined;
1823
+ byAgent?: {
1824
+ value: string;
1825
+ requestCount: number;
1826
+ totalCost: number;
1827
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1828
+ percentageOfTotal: number;
1829
+ totalTokens?: number | undefined;
1830
+ periodStart?: string | undefined;
1831
+ periodEnd?: string | undefined;
1832
+ }[] | undefined;
1833
+ byOperation?: {
1834
+ value: string;
1835
+ requestCount: number;
1836
+ totalCost: number;
1837
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1838
+ percentageOfTotal: number;
1839
+ totalTokens?: number | undefined;
1840
+ periodStart?: string | undefined;
1841
+ periodEnd?: string | undefined;
1842
+ }[] | undefined;
1843
+ byDate?: {
1844
+ value: string;
1845
+ requestCount: number;
1846
+ totalCost: number;
1847
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1848
+ percentageOfTotal: number;
1849
+ totalTokens?: number | undefined;
1850
+ periodStart?: string | undefined;
1851
+ periodEnd?: string | undefined;
1852
+ }[] | undefined;
1853
+ topModels?: {
1854
+ value: string;
1855
+ requestCount: number;
1856
+ totalCost: number;
1857
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1858
+ percentageOfTotal: number;
1859
+ totalTokens?: number | undefined;
1860
+ periodStart?: string | undefined;
1861
+ periodEnd?: string | undefined;
1862
+ }[] | undefined;
1863
+ topUsers?: {
1864
+ value: string;
1865
+ requestCount: number;
1866
+ totalCost: number;
1867
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1868
+ percentageOfTotal: number;
1869
+ totalTokens?: number | undefined;
1870
+ periodStart?: string | undefined;
1871
+ periodEnd?: string | undefined;
1872
+ }[] | undefined;
1873
+ topAgents?: {
1874
+ value: string;
1875
+ requestCount: number;
1876
+ totalCost: number;
1877
+ dimension: "object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag";
1878
+ percentageOfTotal: number;
1879
+ totalTokens?: number | undefined;
1880
+ periodStart?: string | undefined;
1881
+ periodEnd?: string | undefined;
1882
+ }[] | undefined;
1883
+ tokensPerDollar?: number | undefined;
1884
+ requestsPerDollar?: number | undefined;
1885
+ };
1886
+ currency?: string | undefined;
1887
+ format?: "summary" | "detailed" | "executive" | undefined;
1888
+ recommendations?: {
1889
+ type: "switch_model" | "reduce_tokens" | "batch_requests" | "cache_results" | "adjust_parameters" | "limit_usage";
1890
+ description: string;
1891
+ priority: "medium" | "low" | "high";
1892
+ title: string;
1893
+ id: string;
1894
+ effort: "medium" | "low" | "high";
1895
+ status?: "pending" | "accepted" | "rejected" | "implemented" | undefined;
1896
+ estimatedSavings?: number | undefined;
1897
+ savingsPercentage?: number | undefined;
1898
+ actionable?: boolean | undefined;
1899
+ actionSteps?: string[] | undefined;
1900
+ targetModel?: string | undefined;
1901
+ alternativeModel?: string | undefined;
1902
+ affectedUsers?: string[] | undefined;
1903
+ implementedAt?: string | undefined;
1904
+ }[] | undefined;
1905
+ budgets?: {
1906
+ type: "object" | "user" | "global" | "agent" | "project" | "department";
1907
+ maxCost: number;
1908
+ budgetId: string;
1909
+ periodStart: string;
1910
+ periodEnd: string;
1911
+ percentageUsed: number;
1912
+ remainingCost: number;
1913
+ lastUpdated: string;
1914
+ currency?: string | undefined;
1915
+ scope?: string | undefined;
1916
+ currentCost?: number | undefined;
1917
+ isExceeded?: boolean | undefined;
1918
+ isWarning?: boolean | undefined;
1919
+ projectedCost?: number | undefined;
1920
+ projectedOverage?: number | undefined;
1921
+ }[] | undefined;
1922
+ alerts?: {
1923
+ message: string;
1924
+ type: "threshold_warning" | "threshold_critical" | "limit_exceeded" | "anomaly_detected" | "projection_exceeded";
1925
+ severity: "warning" | "info" | "critical";
1926
+ id: string;
1927
+ timestamp: string;
1928
+ currentCost: number;
1929
+ currency?: string | undefined;
1930
+ scope?: string | undefined;
1931
+ metadata?: Record<string, any> | undefined;
1932
+ threshold?: number | undefined;
1933
+ maxCost?: number | undefined;
1934
+ budgetId?: string | undefined;
1935
+ budgetType?: "object" | "user" | "global" | "agent" | "project" | "department" | undefined;
1936
+ recommendations?: string[] | undefined;
1937
+ acknowledged?: boolean | undefined;
1938
+ acknowledgedBy?: string | undefined;
1939
+ acknowledgedAt?: string | undefined;
1940
+ resolved?: boolean | undefined;
1941
+ }[] | undefined;
1942
+ activeAlertCount?: number | undefined;
1943
+ previousPeriodCost?: number | undefined;
1944
+ costChange?: number | undefined;
1945
+ costChangePercentage?: number | undefined;
1946
+ forecastedCost?: number | undefined;
1947
+ forecastedBudgetStatus?: "at" | "over" | "under" | undefined;
1948
+ }>;
1949
+ /**
1950
+ * Cost Query Filters
1951
+ */
1952
+ export declare const CostQueryFiltersSchema: z.ZodObject<{
1953
+ /** Time Range */
1954
+ startDate: z.ZodOptional<z.ZodString>;
1955
+ endDate: z.ZodOptional<z.ZodString>;
1956
+ /** Dimensions */
1957
+ modelIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1958
+ providers: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1959
+ userIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1960
+ agentIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1961
+ operations: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1962
+ sessionIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1963
+ /** Cost Range */
1964
+ minCost: z.ZodOptional<z.ZodNumber>;
1965
+ maxCost: z.ZodOptional<z.ZodNumber>;
1966
+ /** Tags */
1967
+ tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1968
+ /** Aggregation */
1969
+ groupBy: z.ZodOptional<z.ZodArray<z.ZodEnum<["model", "provider", "user", "agent", "object", "operation", "date", "hour", "tag"]>, "many">>;
1970
+ /** Sorting */
1971
+ orderBy: z.ZodDefault<z.ZodOptional<z.ZodEnum<["timestamp", "cost", "tokens"]>>>;
1972
+ orderDirection: z.ZodDefault<z.ZodOptional<z.ZodEnum<["asc", "desc"]>>>;
1973
+ /** Pagination */
1974
+ limit: z.ZodOptional<z.ZodNumber>;
1975
+ offset: z.ZodOptional<z.ZodNumber>;
1976
+ }, "strip", z.ZodTypeAny, {
1977
+ orderBy: "timestamp" | "tokens" | "cost";
1978
+ orderDirection: "asc" | "desc";
1979
+ groupBy?: ("object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag")[] | undefined;
1980
+ providers?: string[] | undefined;
1981
+ startDate?: string | undefined;
1982
+ endDate?: string | undefined;
1983
+ tags?: string[] | undefined;
1984
+ maxCost?: number | undefined;
1985
+ modelIds?: string[] | undefined;
1986
+ userIds?: string[] | undefined;
1987
+ agentIds?: string[] | undefined;
1988
+ operations?: string[] | undefined;
1989
+ sessionIds?: string[] | undefined;
1990
+ minCost?: number | undefined;
1991
+ limit?: number | undefined;
1992
+ offset?: number | undefined;
1993
+ }, {
1994
+ orderBy?: "timestamp" | "tokens" | "cost" | undefined;
1995
+ groupBy?: ("object" | "date" | "provider" | "user" | "operation" | "model" | "hour" | "agent" | "tag")[] | undefined;
1996
+ providers?: string[] | undefined;
1997
+ startDate?: string | undefined;
1998
+ endDate?: string | undefined;
1999
+ tags?: string[] | undefined;
2000
+ maxCost?: number | undefined;
2001
+ modelIds?: string[] | undefined;
2002
+ userIds?: string[] | undefined;
2003
+ agentIds?: string[] | undefined;
2004
+ operations?: string[] | undefined;
2005
+ sessionIds?: string[] | undefined;
2006
+ minCost?: number | undefined;
2007
+ orderDirection?: "asc" | "desc" | undefined;
2008
+ limit?: number | undefined;
2009
+ offset?: number | undefined;
2010
+ }>;
2011
+ export type CostMetricType = z.infer<typeof CostMetricTypeSchema>;
2012
+ export type BillingPeriod = z.infer<typeof BillingPeriodSchema>;
2013
+ export type CostEntry = z.infer<typeof CostEntrySchema>;
2014
+ export type BudgetType = z.infer<typeof BudgetTypeSchema>;
2015
+ export type BudgetLimit = z.infer<typeof BudgetLimitSchema>;
2016
+ export type BudgetStatus = z.infer<typeof BudgetStatusSchema>;
2017
+ export type CostAlertType = z.infer<typeof CostAlertTypeSchema>;
2018
+ export type CostAlert = z.infer<typeof CostAlertSchema>;
2019
+ export type CostBreakdownDimension = z.infer<typeof CostBreakdownDimensionSchema>;
2020
+ export type CostBreakdownEntry = z.infer<typeof CostBreakdownEntrySchema>;
2021
+ export type CostAnalytics = z.infer<typeof CostAnalyticsSchema>;
2022
+ export type CostOptimizationRecommendation = z.infer<typeof CostOptimizationRecommendationSchema>;
2023
+ export type CostReport = z.infer<typeof CostReportSchema>;
2024
+ export type CostQueryFilters = z.infer<typeof CostQueryFiltersSchema>;
2025
+ //# sourceMappingURL=cost.zod.d.ts.map