@cratis/ai 2.31.0 → 3.1.0

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 (214) hide show
  1. package/dist/cjs/generated/Harnesses/Harness.js +1 -1
  2. package/dist/cjs/generated/Harnesses/Harness.js.map +1 -1
  3. package/dist/cjs/generated/Providers/Adding/AddAnthropicProvider.js +1 -1
  4. package/dist/cjs/generated/Providers/Adding/AddAnthropicProvider.js.map +1 -1
  5. package/dist/cjs/generated/Providers/Adding/AddAzureOpenAIProvider.js +1 -1
  6. package/dist/cjs/generated/Providers/Adding/AddAzureOpenAIProvider.js.map +1 -1
  7. package/dist/cjs/generated/Providers/Adding/AddOpenAICompatibleProvider.js +1 -1
  8. package/dist/cjs/generated/Providers/Adding/AddOpenAICompatibleProvider.js.map +1 -1
  9. package/dist/cjs/generated/Providers/Adding/AddOpenAIProvider.js +1 -1
  10. package/dist/cjs/generated/Providers/Adding/AddOpenAIProvider.js.map +1 -1
  11. package/dist/cjs/generated/Providers/Adding/AddZAIProvider.js +1 -1
  12. package/dist/cjs/generated/Providers/Adding/AddZAIProvider.js.map +1 -1
  13. package/dist/cjs/generated/Providers/Configuring/AddAnthropicProvider.js +1 -1
  14. package/dist/cjs/generated/Providers/Configuring/AddAnthropicProvider.js.map +1 -1
  15. package/dist/cjs/generated/Providers/Configuring/AddAzureOpenAIProvider.js +1 -1
  16. package/dist/cjs/generated/Providers/Configuring/AddAzureOpenAIProvider.js.map +1 -1
  17. package/dist/cjs/generated/Providers/Configuring/AddOpenAICompatibleProvider.js +1 -1
  18. package/dist/cjs/generated/Providers/Configuring/AddOpenAICompatibleProvider.js.map +1 -1
  19. package/dist/cjs/generated/Providers/Configuring/AddOpenAIProvider.js +1 -1
  20. package/dist/cjs/generated/Providers/Configuring/AddOpenAIProvider.js.map +1 -1
  21. package/dist/cjs/generated/Providers/Configuring/AnthropicModelConfigured.js.map +1 -1
  22. package/dist/cjs/generated/Providers/Configuring/AzureOpenAIModelConfigured.js.map +1 -1
  23. package/dist/cjs/generated/Providers/Configuring/OpenAICompatibleModelConfigured.js.map +1 -1
  24. package/dist/cjs/generated/Providers/Configuring/OpenAIModelConfigured.js.map +1 -1
  25. package/dist/cjs/generated/Providers/Configuring/ReconfigureAnthropicProvider.js +1 -1
  26. package/dist/cjs/generated/Providers/Configuring/ReconfigureAnthropicProvider.js.map +1 -1
  27. package/dist/cjs/generated/Providers/Configuring/ReconfigureAzureOpenAIProvider.js +1 -1
  28. package/dist/cjs/generated/Providers/Configuring/ReconfigureAzureOpenAIProvider.js.map +1 -1
  29. package/dist/cjs/generated/Providers/Configuring/ReconfigureOpenAICompatibleProvider.js +1 -1
  30. package/dist/cjs/generated/Providers/Configuring/ReconfigureOpenAICompatibleProvider.js.map +1 -1
  31. package/dist/cjs/generated/Providers/Configuring/ReconfigureOpenAIProvider.js +1 -1
  32. package/dist/cjs/generated/Providers/Configuring/ReconfigureOpenAIProvider.js.map +1 -1
  33. package/dist/cjs/generated/Providers/Configuring/RemoveAIProvider.js +1 -1
  34. package/dist/cjs/generated/Providers/Configuring/RemoveAIProvider.js.map +1 -1
  35. package/dist/cjs/generated/Providers/Configuring/RenameAIProvider.js +1 -1
  36. package/dist/cjs/generated/Providers/Configuring/RenameAIProvider.js.map +1 -1
  37. package/dist/cjs/generated/Providers/Reconfiguring/AnthropicProviderReconfigured.js.map +1 -1
  38. package/dist/cjs/generated/Providers/Reconfiguring/AzureOpenAIProviderReconfigured.js.map +1 -1
  39. package/dist/cjs/generated/Providers/Reconfiguring/OpenAICompatibleProviderReconfigured.js.map +1 -1
  40. package/dist/cjs/generated/Providers/Reconfiguring/OpenAIProviderReconfigured.js.map +1 -1
  41. package/dist/cjs/generated/Providers/Reconfiguring/ReconfigureAnthropicProvider.js +1 -1
  42. package/dist/cjs/generated/Providers/Reconfiguring/ReconfigureAnthropicProvider.js.map +1 -1
  43. package/dist/cjs/generated/Providers/Reconfiguring/ReconfigureAzureOpenAIProvider.js +1 -1
  44. package/dist/cjs/generated/Providers/Reconfiguring/ReconfigureAzureOpenAIProvider.js.map +1 -1
  45. package/dist/cjs/generated/Providers/Reconfiguring/ReconfigureOpenAICompatibleProvider.js +1 -1
  46. package/dist/cjs/generated/Providers/Reconfiguring/ReconfigureOpenAICompatibleProvider.js.map +1 -1
  47. package/dist/cjs/generated/Providers/Reconfiguring/ReconfigureOpenAIProvider.js +1 -1
  48. package/dist/cjs/generated/Providers/Reconfiguring/ReconfigureOpenAIProvider.js.map +1 -1
  49. package/dist/cjs/generated/Providers/Reconfiguring/ReconfigureZAIProvider.js +1 -1
  50. package/dist/cjs/generated/Providers/Reconfiguring/ReconfigureZAIProvider.js.map +1 -1
  51. package/dist/cjs/generated/Providers/Reconfiguring/ZAIProviderReconfigured.js.map +1 -1
  52. package/dist/cjs/generated/Providers/Removing/RemoveAIProvider.js +1 -1
  53. package/dist/cjs/generated/Providers/Removing/RemoveAIProvider.js.map +1 -1
  54. package/dist/cjs/generated/Providers/Renaming/RenameAIProvider.js +1 -1
  55. package/dist/cjs/generated/Providers/Renaming/RenameAIProvider.js.map +1 -1
  56. package/dist/cjs/generated/Providers/UsageReporting/AIProviderCostDay.js.map +1 -1
  57. package/dist/cjs/generated/Providers/UsageReporting/AIProviderUsageDay.js.map +1 -1
  58. package/dist/cjs/generated/Providers/UsageReporting/AIProviderUsageReport.js.map +1 -1
  59. package/dist/cjs/generated/Providers/UsageReporting/AIUsageReportAvailability.js +1 -1
  60. package/dist/cjs/generated/Providers/UsageReporting/AIUsageReportAvailability.js.map +1 -1
  61. package/dist/cjs/generated/Providers/UsageReporting/SettingCredential/AIProviderUsageCredentialCleared.js +1 -1
  62. package/dist/cjs/generated/Providers/UsageReporting/SettingCredential/AIProviderUsageCredentialCleared.js.map +1 -1
  63. package/dist/cjs/generated/Providers/UsageReporting/SettingCredential/AIProviderUsageCredentialSet.js.map +1 -1
  64. package/dist/cjs/generated/Providers/UsageReporting/SettingCredential/ClearAIProviderUsageCredential.js +1 -1
  65. package/dist/cjs/generated/Providers/UsageReporting/SettingCredential/ClearAIProviderUsageCredential.js.map +1 -1
  66. package/dist/cjs/generated/Providers/UsageReporting/SettingCredential/SetAIProviderUsageCredential.js +1 -1
  67. package/dist/cjs/generated/Providers/UsageReporting/SettingCredential/SetAIProviderUsageCredential.js.map +1 -1
  68. package/dist/cjs/generated/Providers/UsageReporting/UsageReportFor.js +1 -1
  69. package/dist/cjs/generated/Providers/UsageReporting/UsageReportFor.js.map +1 -1
  70. package/dist/cjs/generated/Usage/Daily/AgentUsageByDay.js +28 -7
  71. package/dist/cjs/generated/Usage/Daily/AgentUsageByDay.js.map +1 -1
  72. package/dist/cjs/generated/Usage/Daily/LastYear.js +1 -1
  73. package/dist/cjs/generated/Usage/Daily/LastYear.js.map +1 -1
  74. package/dist/cjs/generated/Usage/RecordAgentSessionUsage.js +1 -1
  75. package/dist/cjs/generated/Usage/RecordAgentSessionUsage.js.map +1 -1
  76. package/dist/cjs/generated/Usage/Trends/AgentUsageByMonth.js.map +1 -1
  77. package/dist/cjs/generated/Usage/Trends/AgentUsageByWeek.js.map +1 -1
  78. package/dist/cjs/generated/Usage/Trends/RecentMonths.js +1 -1
  79. package/dist/cjs/generated/Usage/Trends/RecentMonths.js.map +1 -1
  80. package/dist/cjs/generated/Usage/Trends/RecentWeeks.js +1 -1
  81. package/dist/cjs/generated/Usage/Trends/RecentWeeks.js.map +1 -1
  82. package/dist/esm/generated/Harnesses/Harness.js +1 -1
  83. package/dist/esm/generated/Harnesses/Harness.js.map +1 -1
  84. package/dist/esm/generated/Providers/Adding/AddAnthropicProvider.js +1 -1
  85. package/dist/esm/generated/Providers/Adding/AddAnthropicProvider.js.map +1 -1
  86. package/dist/esm/generated/Providers/Adding/AddAzureOpenAIProvider.js +1 -1
  87. package/dist/esm/generated/Providers/Adding/AddAzureOpenAIProvider.js.map +1 -1
  88. package/dist/esm/generated/Providers/Adding/AddOpenAICompatibleProvider.js +1 -1
  89. package/dist/esm/generated/Providers/Adding/AddOpenAICompatibleProvider.js.map +1 -1
  90. package/dist/esm/generated/Providers/Adding/AddOpenAIProvider.js +1 -1
  91. package/dist/esm/generated/Providers/Adding/AddOpenAIProvider.js.map +1 -1
  92. package/dist/esm/generated/Providers/Adding/AddZAIProvider.js +1 -1
  93. package/dist/esm/generated/Providers/Adding/AddZAIProvider.js.map +1 -1
  94. package/dist/esm/generated/Providers/Configuring/AddAnthropicProvider.js +1 -1
  95. package/dist/esm/generated/Providers/Configuring/AddAnthropicProvider.js.map +1 -1
  96. package/dist/esm/generated/Providers/Configuring/AddAzureOpenAIProvider.js +1 -1
  97. package/dist/esm/generated/Providers/Configuring/AddAzureOpenAIProvider.js.map +1 -1
  98. package/dist/esm/generated/Providers/Configuring/AddOpenAICompatibleProvider.js +1 -1
  99. package/dist/esm/generated/Providers/Configuring/AddOpenAICompatibleProvider.js.map +1 -1
  100. package/dist/esm/generated/Providers/Configuring/AddOpenAIProvider.js +1 -1
  101. package/dist/esm/generated/Providers/Configuring/AddOpenAIProvider.js.map +1 -1
  102. package/dist/esm/generated/Providers/Configuring/AnthropicModelConfigured.js.map +1 -1
  103. package/dist/esm/generated/Providers/Configuring/AzureOpenAIModelConfigured.js.map +1 -1
  104. package/dist/esm/generated/Providers/Configuring/OpenAICompatibleModelConfigured.js.map +1 -1
  105. package/dist/esm/generated/Providers/Configuring/OpenAIModelConfigured.js.map +1 -1
  106. package/dist/esm/generated/Providers/Configuring/ReconfigureAnthropicProvider.js +1 -1
  107. package/dist/esm/generated/Providers/Configuring/ReconfigureAnthropicProvider.js.map +1 -1
  108. package/dist/esm/generated/Providers/Configuring/ReconfigureAzureOpenAIProvider.js +1 -1
  109. package/dist/esm/generated/Providers/Configuring/ReconfigureAzureOpenAIProvider.js.map +1 -1
  110. package/dist/esm/generated/Providers/Configuring/ReconfigureOpenAICompatibleProvider.js +1 -1
  111. package/dist/esm/generated/Providers/Configuring/ReconfigureOpenAICompatibleProvider.js.map +1 -1
  112. package/dist/esm/generated/Providers/Configuring/ReconfigureOpenAIProvider.js +1 -1
  113. package/dist/esm/generated/Providers/Configuring/ReconfigureOpenAIProvider.js.map +1 -1
  114. package/dist/esm/generated/Providers/Configuring/RemoveAIProvider.js +1 -1
  115. package/dist/esm/generated/Providers/Configuring/RemoveAIProvider.js.map +1 -1
  116. package/dist/esm/generated/Providers/Configuring/RenameAIProvider.js +1 -1
  117. package/dist/esm/generated/Providers/Configuring/RenameAIProvider.js.map +1 -1
  118. package/dist/esm/generated/Providers/Reconfiguring/AnthropicProviderReconfigured.js.map +1 -1
  119. package/dist/esm/generated/Providers/Reconfiguring/AzureOpenAIProviderReconfigured.js.map +1 -1
  120. package/dist/esm/generated/Providers/Reconfiguring/OpenAICompatibleProviderReconfigured.js.map +1 -1
  121. package/dist/esm/generated/Providers/Reconfiguring/OpenAIProviderReconfigured.js.map +1 -1
  122. package/dist/esm/generated/Providers/Reconfiguring/ReconfigureAnthropicProvider.js +1 -1
  123. package/dist/esm/generated/Providers/Reconfiguring/ReconfigureAnthropicProvider.js.map +1 -1
  124. package/dist/esm/generated/Providers/Reconfiguring/ReconfigureAzureOpenAIProvider.js +1 -1
  125. package/dist/esm/generated/Providers/Reconfiguring/ReconfigureAzureOpenAIProvider.js.map +1 -1
  126. package/dist/esm/generated/Providers/Reconfiguring/ReconfigureOpenAICompatibleProvider.js +1 -1
  127. package/dist/esm/generated/Providers/Reconfiguring/ReconfigureOpenAICompatibleProvider.js.map +1 -1
  128. package/dist/esm/generated/Providers/Reconfiguring/ReconfigureOpenAIProvider.js +1 -1
  129. package/dist/esm/generated/Providers/Reconfiguring/ReconfigureOpenAIProvider.js.map +1 -1
  130. package/dist/esm/generated/Providers/Reconfiguring/ReconfigureZAIProvider.js +1 -1
  131. package/dist/esm/generated/Providers/Reconfiguring/ReconfigureZAIProvider.js.map +1 -1
  132. package/dist/esm/generated/Providers/Reconfiguring/ZAIProviderReconfigured.js.map +1 -1
  133. package/dist/esm/generated/Providers/Removing/RemoveAIProvider.js +1 -1
  134. package/dist/esm/generated/Providers/Removing/RemoveAIProvider.js.map +1 -1
  135. package/dist/esm/generated/Providers/Renaming/RenameAIProvider.js +1 -1
  136. package/dist/esm/generated/Providers/Renaming/RenameAIProvider.js.map +1 -1
  137. package/dist/esm/generated/Providers/UsageReporting/AIProviderCostDay.js.map +1 -1
  138. package/dist/esm/generated/Providers/UsageReporting/AIProviderUsageDay.js.map +1 -1
  139. package/dist/esm/generated/Providers/UsageReporting/AIProviderUsageReport.js.map +1 -1
  140. package/dist/esm/generated/Providers/UsageReporting/AIUsageReportAvailability.js +1 -1
  141. package/dist/esm/generated/Providers/UsageReporting/AIUsageReportAvailability.js.map +1 -1
  142. package/dist/esm/generated/Providers/UsageReporting/SettingCredential/AIProviderUsageCredentialCleared.js +1 -1
  143. package/dist/esm/generated/Providers/UsageReporting/SettingCredential/AIProviderUsageCredentialCleared.js.map +1 -1
  144. package/dist/esm/generated/Providers/UsageReporting/SettingCredential/AIProviderUsageCredentialSet.js.map +1 -1
  145. package/dist/esm/generated/Providers/UsageReporting/SettingCredential/ClearAIProviderUsageCredential.js +1 -1
  146. package/dist/esm/generated/Providers/UsageReporting/SettingCredential/ClearAIProviderUsageCredential.js.map +1 -1
  147. package/dist/esm/generated/Providers/UsageReporting/SettingCredential/SetAIProviderUsageCredential.js +1 -1
  148. package/dist/esm/generated/Providers/UsageReporting/SettingCredential/SetAIProviderUsageCredential.js.map +1 -1
  149. package/dist/esm/generated/Providers/UsageReporting/UsageReportFor.js +1 -1
  150. package/dist/esm/generated/Providers/UsageReporting/UsageReportFor.js.map +1 -1
  151. package/dist/esm/generated/Usage/Daily/AgentUsageByDay.d.ts +5 -3
  152. package/dist/esm/generated/Usage/Daily/AgentUsageByDay.d.ts.map +1 -1
  153. package/dist/esm/generated/Usage/Daily/AgentUsageByDay.js +29 -8
  154. package/dist/esm/generated/Usage/Daily/AgentUsageByDay.js.map +1 -1
  155. package/dist/esm/generated/Usage/Daily/LastYear.js +1 -1
  156. package/dist/esm/generated/Usage/Daily/LastYear.js.map +1 -1
  157. package/dist/esm/generated/Usage/RecordAgentSessionUsage.js +1 -1
  158. package/dist/esm/generated/Usage/RecordAgentSessionUsage.js.map +1 -1
  159. package/dist/esm/generated/Usage/Trends/AgentUsageByMonth.js.map +1 -1
  160. package/dist/esm/generated/Usage/Trends/AgentUsageByWeek.js.map +1 -1
  161. package/dist/esm/generated/Usage/Trends/RecentMonths.js +1 -1
  162. package/dist/esm/generated/Usage/Trends/RecentMonths.js.map +1 -1
  163. package/dist/esm/generated/Usage/Trends/RecentWeeks.js +1 -1
  164. package/dist/esm/generated/Usage/Trends/RecentWeeks.js.map +1 -1
  165. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  166. package/generated/Harnesses/Harness.ts +1 -1
  167. package/generated/Providers/Adding/AddAnthropicProvider.ts +1 -1
  168. package/generated/Providers/Adding/AddAzureOpenAIProvider.ts +1 -1
  169. package/generated/Providers/Adding/AddOpenAICompatibleProvider.ts +1 -1
  170. package/generated/Providers/Adding/AddOpenAIProvider.ts +1 -1
  171. package/generated/Providers/Adding/AddZAIProvider.ts +1 -1
  172. package/generated/Providers/Configuring/AddAnthropicProvider.ts +1 -1
  173. package/generated/Providers/Configuring/AddAzureOpenAIProvider.ts +1 -1
  174. package/generated/Providers/Configuring/AddOpenAICompatibleProvider.ts +1 -1
  175. package/generated/Providers/Configuring/AddOpenAIProvider.ts +1 -1
  176. package/generated/Providers/Configuring/AnthropicModelConfigured.ts +1 -1
  177. package/generated/Providers/Configuring/AzureOpenAIModelConfigured.ts +1 -1
  178. package/generated/Providers/Configuring/OpenAICompatibleModelConfigured.ts +1 -1
  179. package/generated/Providers/Configuring/OpenAIModelConfigured.ts +1 -1
  180. package/generated/Providers/Configuring/ReconfigureAnthropicProvider.ts +1 -1
  181. package/generated/Providers/Configuring/ReconfigureAzureOpenAIProvider.ts +1 -1
  182. package/generated/Providers/Configuring/ReconfigureOpenAICompatibleProvider.ts +1 -1
  183. package/generated/Providers/Configuring/ReconfigureOpenAIProvider.ts +1 -1
  184. package/generated/Providers/Configuring/RemoveAIProvider.ts +1 -1
  185. package/generated/Providers/Configuring/RenameAIProvider.ts +1 -1
  186. package/generated/Providers/Reconfiguring/AnthropicProviderReconfigured.ts +1 -1
  187. package/generated/Providers/Reconfiguring/AzureOpenAIProviderReconfigured.ts +1 -1
  188. package/generated/Providers/Reconfiguring/OpenAICompatibleProviderReconfigured.ts +1 -1
  189. package/generated/Providers/Reconfiguring/OpenAIProviderReconfigured.ts +1 -1
  190. package/generated/Providers/Reconfiguring/ReconfigureAnthropicProvider.ts +1 -1
  191. package/generated/Providers/Reconfiguring/ReconfigureAzureOpenAIProvider.ts +1 -1
  192. package/generated/Providers/Reconfiguring/ReconfigureOpenAICompatibleProvider.ts +1 -1
  193. package/generated/Providers/Reconfiguring/ReconfigureOpenAIProvider.ts +1 -1
  194. package/generated/Providers/Reconfiguring/ReconfigureZAIProvider.ts +1 -1
  195. package/generated/Providers/Reconfiguring/ZAIProviderReconfigured.ts +1 -1
  196. package/generated/Providers/Removing/RemoveAIProvider.ts +1 -1
  197. package/generated/Providers/Renaming/RenameAIProvider.ts +1 -1
  198. package/generated/Providers/UsageReporting/AIProviderCostDay.ts +1 -1
  199. package/generated/Providers/UsageReporting/AIProviderUsageDay.ts +1 -1
  200. package/generated/Providers/UsageReporting/AIProviderUsageReport.ts +1 -1
  201. package/generated/Providers/UsageReporting/AIUsageReportAvailability.ts +1 -1
  202. package/generated/Providers/UsageReporting/SettingCredential/AIProviderUsageCredentialCleared.ts +1 -1
  203. package/generated/Providers/UsageReporting/SettingCredential/AIProviderUsageCredentialSet.ts +1 -1
  204. package/generated/Providers/UsageReporting/SettingCredential/ClearAIProviderUsageCredential.ts +1 -1
  205. package/generated/Providers/UsageReporting/SettingCredential/SetAIProviderUsageCredential.ts +1 -1
  206. package/generated/Providers/UsageReporting/UsageReportFor.ts +1 -1
  207. package/generated/Usage/Daily/AgentUsageByDay.ts +24 -7
  208. package/generated/Usage/Daily/LastYear.ts +1 -1
  209. package/generated/Usage/RecordAgentSessionUsage.ts +1 -1
  210. package/generated/Usage/Trends/AgentUsageByMonth.ts +1 -1
  211. package/generated/Usage/Trends/AgentUsageByWeek.ts +1 -1
  212. package/generated/Usage/Trends/RecentMonths.ts +1 -1
  213. package/generated/Usage/Trends/RecentWeeks.ts +1 -1
  214. package/package.json +1 -1
@@ -4,7 +4,7 @@ import { PropertyDescriptor } from '@cratis/arc/reflection';
4
4
  import { AIProviderUsageCredentialSet } from './AIProviderUsageCredentialSet.js';
5
5
  import { Guid } from '@cratis/fundamentals';
6
6
 
7
- // @generated by Cratis. Source: Cratis.AI.Providers.UsageReporting.SettingCredential.SetAIProviderUsageCredential. Time: 2026-09-22T21:58:26.1991304Z. Hash: 0D874F4D52C0129159C2822C00F4FF9B339875E21A0CC9EC12B7BAF202494E77
7
+ // @generated by Cratis. Source: Cratis.AI.Providers.UsageReporting.SettingCredential.SetAIProviderUsageCredential. Time: 2026-09-23T09:39:57.6536093Z. Hash: 0D874F4D52C0129159C2822C00F4FF9B339875E21A0CC9EC12B7BAF202494E77
8
8
  /*---------------------------------------------------------------------------------------------
9
9
  * **DO NOT EDIT** - This file is an automatically generated file.
10
10
  *--------------------------------------------------------------------------------------------*/ /* eslint-disable sort-imports */ /* eslint-disable @typescript-eslint/no-empty-interface */ // eslint-disable-next-line header/header
@@ -1 +1 @@
1
- {"version":3,"file":"SetAIProviderUsageCredential.js","sources":["../../../../../../generated/Providers/UsageReporting/SettingCredential/SetAIProviderUsageCredential.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Providers.UsageReporting.SettingCredential.SetAIProviderUsageCredential. Time: 2026-09-22T21:58:26.1991304Z. Hash: 0D874F4D52C0129159C2822C00F4FF9B339875E21A0CC9EC12B7BAF202494E77\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n/* eslint-disable @typescript-eslint/no-empty-interface */\n// eslint-disable-next-line header/header\nimport { Command } from '@cratis/arc/commands';\nimport { useCommand, SetCommandValues, ClearCommandValues } from '@cratis/arc.react/commands';\nimport { PropertyDescriptor } from '@cratis/arc/reflection';\nimport { AIProviderUsageCredentialSet } from './AIProviderUsageCredentialSet';\nimport { Guid } from '@cratis/fundamentals';\n\n/**\n * Command for setting the Admin API key a configured AI provider's usage report is read through - separate from the completions key, since the vendors that publish organization usage and cost reports (Anthropic, OpenAI) gate them behind a distinct Admin-scoped credential that a completions key is rejected by. Ported from Direct's `AIProviders.UsageReporting.SettingCredential.SetAIProviderUsageCredential` (migration-status.md, \"Usage reporting\").\n */\nexport interface ISetAIProviderUsageCredential {\n \n /**\n * The provider to set the usage credential for.\n */\n provider?: Guid;\n \n /**\n * The usage Admin API key.\n */\n usageApiKey?: string;\n}\n\n\n/**\n * Command for setting the Admin API key a configured AI provider's usage report is read through - separate from the completions key, since the vendors that publish organization usage and cost reports (Anthropic, OpenAI) gate them behind a distinct Admin-scoped credential that a completions key is rejected by. Ported from Direct's `AIProviders.UsageReporting.SettingCredential.SetAIProviderUsageCredential` (migration-status.md, \"Usage reporting\").\n */\nexport class SetAIProviderUsageCredential extends Command<ISetAIProviderUsageCredential, AIProviderUsageCredentialSet> implements ISetAIProviderUsageCredential {\n readonly route: string = '/api/a-i/providers/usage-reporting/setting-credential/set-a-i-provider-usage-credential';\n readonly treatWarningsAsErrors: boolean = false;\n readonly roles: string[] = [];\n readonly propertyDescriptors: PropertyDescriptor[] = [\n new PropertyDescriptor('provider', Guid, false),\n new PropertyDescriptor('usageApiKey', String, false),\n ];\n\n private _provider!: Guid;\n private _usageApiKey!: string;\n\n constructor() {\n super(AIProviderUsageCredentialSet, false);\n }\n\n get requestParameters(): string[] {\n return [\n ];\n }\n\n /**\n * The provider to set the usage credential for.\n */\n get provider(): Guid {\n return this._provider;\n }\n\n set provider(value: Guid) {\n this._provider = value;\n this.propertyChanged('provider');\n }\n /**\n * The usage Admin API key.\n */\n get usageApiKey(): string {\n return this._usageApiKey;\n }\n\n set usageApiKey(value: string) {\n this._usageApiKey = value;\n this.propertyChanged('usageApiKey');\n }\n\n static use(initialValues?: ISetAIProviderUsageCredential): [SetAIProviderUsageCredential, SetCommandValues<ISetAIProviderUsageCredential>, ClearCommandValues] {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return useCommand<SetAIProviderUsageCredential, ISetAIProviderUsageCredential>(SetAIProviderUsageCredential, initialValues);\n }\n}\n"],"names":["SetAIProviderUsageCredential","Command","route","treatWarningsAsErrors","roles","propertyDescriptors","PropertyDescriptor","Guid","String","_provider","_usageApiKey","AIProviderUsageCredentialSet","requestParameters","provider","value","propertyChanged","usageApiKey","use","initialValues","useCommand"],"mappings":";;;;;;AAAA;AACA;;AAE8F;AA4B9F;;IAGO,MAAMA,4BAAAA,SAAqCC,OAAAA,CAAAA;AACrCC,IAAAA,KAAAA,GAAgB,yFAAA;AAChBC,IAAAA,qBAAAA,GAAiC,KAAA;AACjCC,IAAAA,KAAAA,GAAkB,EAAE;IACpBC,mBAAAA,GAA4C;QACjD,IAAIC,kBAAAA,CAAmB,YAAYC,IAAAA,EAAM,KAAA,CAAA;QACzC,IAAID,kBAAAA,CAAmB,eAAeE,MAAAA,EAAQ,KAAA;KACjD;IAEOC,SAAAA;IACAC,YAAAA;IAER,WAAA,EAAc;AACV,QAAA,KAAK,CAACC,4BAAAA,EAA8B,KAAA,CAAA;AACxC,IAAA;AAEA,IAAA,IAAIC,iBAAAA,GAA8B;AAC9B,QAAA,OAAO,EACN;AACL,IAAA;AAEA;;AAEC,QACD,IAAIC,QAAAA,GAAiB;QACjB,OAAO,IAAI,CAACJ,SAAS;AACzB,IAAA;IAEA,IAAII,QAAAA,CAASC,KAAW,EAAE;QACtB,IAAI,CAACL,SAAS,GAAGK,KAAAA;QACjB,IAAI,CAACC,eAAe,CAAC,UAAA,CAAA;AACzB,IAAA;AACA;;AAEC,QACD,IAAIC,WAAAA,GAAsB;QACtB,OAAO,IAAI,CAACN,YAAY;AAC5B,IAAA;IAEA,IAAIM,WAAAA,CAAYF,KAAa,EAAE;QAC3B,IAAI,CAACJ,YAAY,GAAGI,KAAAA;QACpB,IAAI,CAACC,eAAe,CAAC,aAAA,CAAA;AACzB,IAAA;IAEA,OAAOE,GAAAA,CAAIC,aAA6C,EAAuG;;;AAG3J,QAAA,OAAOC,WAAwEnB,4BAAAA,EAA8BkB,aAAAA,CAAAA;AACjH,IAAA;AACJ;;;;"}
1
+ {"version":3,"file":"SetAIProviderUsageCredential.js","sources":["../../../../../../generated/Providers/UsageReporting/SettingCredential/SetAIProviderUsageCredential.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Providers.UsageReporting.SettingCredential.SetAIProviderUsageCredential. Time: 2026-09-23T09:39:57.6536093Z. Hash: 0D874F4D52C0129159C2822C00F4FF9B339875E21A0CC9EC12B7BAF202494E77\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n/* eslint-disable @typescript-eslint/no-empty-interface */\n// eslint-disable-next-line header/header\nimport { Command } from '@cratis/arc/commands';\nimport { useCommand, SetCommandValues, ClearCommandValues } from '@cratis/arc.react/commands';\nimport { PropertyDescriptor } from '@cratis/arc/reflection';\nimport { AIProviderUsageCredentialSet } from './AIProviderUsageCredentialSet';\nimport { Guid } from '@cratis/fundamentals';\n\n/**\n * Command for setting the Admin API key a configured AI provider's usage report is read through - separate from the completions key, since the vendors that publish organization usage and cost reports (Anthropic, OpenAI) gate them behind a distinct Admin-scoped credential that a completions key is rejected by. Ported from Direct's `AIProviders.UsageReporting.SettingCredential.SetAIProviderUsageCredential` (migration-status.md, \"Usage reporting\").\n */\nexport interface ISetAIProviderUsageCredential {\n \n /**\n * The provider to set the usage credential for.\n */\n provider?: Guid;\n \n /**\n * The usage Admin API key.\n */\n usageApiKey?: string;\n}\n\n\n/**\n * Command for setting the Admin API key a configured AI provider's usage report is read through - separate from the completions key, since the vendors that publish organization usage and cost reports (Anthropic, OpenAI) gate them behind a distinct Admin-scoped credential that a completions key is rejected by. Ported from Direct's `AIProviders.UsageReporting.SettingCredential.SetAIProviderUsageCredential` (migration-status.md, \"Usage reporting\").\n */\nexport class SetAIProviderUsageCredential extends Command<ISetAIProviderUsageCredential, AIProviderUsageCredentialSet> implements ISetAIProviderUsageCredential {\n readonly route: string = '/api/a-i/providers/usage-reporting/setting-credential/set-a-i-provider-usage-credential';\n readonly treatWarningsAsErrors: boolean = false;\n readonly roles: string[] = [];\n readonly propertyDescriptors: PropertyDescriptor[] = [\n new PropertyDescriptor('provider', Guid, false),\n new PropertyDescriptor('usageApiKey', String, false),\n ];\n\n private _provider!: Guid;\n private _usageApiKey!: string;\n\n constructor() {\n super(AIProviderUsageCredentialSet, false);\n }\n\n get requestParameters(): string[] {\n return [\n ];\n }\n\n /**\n * The provider to set the usage credential for.\n */\n get provider(): Guid {\n return this._provider;\n }\n\n set provider(value: Guid) {\n this._provider = value;\n this.propertyChanged('provider');\n }\n /**\n * The usage Admin API key.\n */\n get usageApiKey(): string {\n return this._usageApiKey;\n }\n\n set usageApiKey(value: string) {\n this._usageApiKey = value;\n this.propertyChanged('usageApiKey');\n }\n\n static use(initialValues?: ISetAIProviderUsageCredential): [SetAIProviderUsageCredential, SetCommandValues<ISetAIProviderUsageCredential>, ClearCommandValues] {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return useCommand<SetAIProviderUsageCredential, ISetAIProviderUsageCredential>(SetAIProviderUsageCredential, initialValues);\n }\n}\n"],"names":["SetAIProviderUsageCredential","Command","route","treatWarningsAsErrors","roles","propertyDescriptors","PropertyDescriptor","Guid","String","_provider","_usageApiKey","AIProviderUsageCredentialSet","requestParameters","provider","value","propertyChanged","usageApiKey","use","initialValues","useCommand"],"mappings":";;;;;;AAAA;AACA;;AAE8F;AA4B9F;;IAGO,MAAMA,4BAAAA,SAAqCC,OAAAA,CAAAA;AACrCC,IAAAA,KAAAA,GAAgB,yFAAA;AAChBC,IAAAA,qBAAAA,GAAiC,KAAA;AACjCC,IAAAA,KAAAA,GAAkB,EAAE;IACpBC,mBAAAA,GAA4C;QACjD,IAAIC,kBAAAA,CAAmB,YAAYC,IAAAA,EAAM,KAAA,CAAA;QACzC,IAAID,kBAAAA,CAAmB,eAAeE,MAAAA,EAAQ,KAAA;KACjD;IAEOC,SAAAA;IACAC,YAAAA;IAER,WAAA,EAAc;AACV,QAAA,KAAK,CAACC,4BAAAA,EAA8B,KAAA,CAAA;AACxC,IAAA;AAEA,IAAA,IAAIC,iBAAAA,GAA8B;AAC9B,QAAA,OAAO,EACN;AACL,IAAA;AAEA;;AAEC,QACD,IAAIC,QAAAA,GAAiB;QACjB,OAAO,IAAI,CAACJ,SAAS;AACzB,IAAA;IAEA,IAAII,QAAAA,CAASC,KAAW,EAAE;QACtB,IAAI,CAACL,SAAS,GAAGK,KAAAA;QACjB,IAAI,CAACC,eAAe,CAAC,UAAA,CAAA;AACzB,IAAA;AACA;;AAEC,QACD,IAAIC,WAAAA,GAAsB;QACtB,OAAO,IAAI,CAACN,YAAY;AAC5B,IAAA;IAEA,IAAIM,WAAAA,CAAYF,KAAa,EAAE;QAC3B,IAAI,CAACJ,YAAY,GAAGI,KAAAA;QACpB,IAAI,CAACC,eAAe,CAAC,aAAA,CAAA;AACzB,IAAA;IAEA,OAAOE,GAAAA,CAAIC,aAA6C,EAAuG;;;AAG3J,QAAA,OAAOC,WAAwEnB,4BAAAA,EAA8BkB,aAAAA,CAAAA;AACjH,IAAA;AACJ;;;;"}
@@ -4,7 +4,7 @@ import { ParameterDescriptor } from '@cratis/arc/reflection';
4
4
  import { Guid } from '@cratis/fundamentals';
5
5
  import { AIProviderUsageReport } from './AIProviderUsageReport.js';
6
6
 
7
- // @generated by Cratis. Source: Cratis.AI.Providers.UsageReporting.AIProviderUsageReport. Time: 2026-09-22T21:58:26.5105601Z. Hash: EFC854588D809BFD96848460C38A25811BBABA0CBB4220CE50433D73B67F315E
7
+ // @generated by Cratis. Source: Cratis.AI.Providers.UsageReporting.AIProviderUsageReport. Time: 2026-09-23T09:39:57.7334316Z. Hash: EFC854588D809BFD96848460C38A25811BBABA0CBB4220CE50433D73B67F315E
8
8
  /*---------------------------------------------------------------------------------------------
9
9
  * **DO NOT EDIT** - This file is an automatically generated file.
10
10
  *--------------------------------------------------------------------------------------------*/ /* eslint-disable sort-imports */ // eslint-disable-next-line header/header
@@ -1 +1 @@
1
- {"version":3,"file":"UsageReportFor.js","sources":["../../../../../generated/Providers/UsageReporting/UsageReportFor.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Providers.UsageReporting.AIProviderUsageReport. Time: 2026-09-22T21:58:26.5105601Z. Hash: EFC854588D809BFD96848460C38A25811BBABA0CBB4220CE50433D73B67F315E\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n// eslint-disable-next-line header/header\nimport { QueryFor, QueryResultWithState } from '@cratis/arc/queries';\nimport { useQuery, useSuspenseQuery, PerformQuery, SetSorting, QueryWhen } from '@cratis/arc.react/queries';\nimport { ParameterDescriptor } from '@cratis/arc/reflection';\nimport { Guid } from '@cratis/fundamentals';\nimport { AIProviderUsageReport } from './AIProviderUsageReport';\n\n\n/**\n * Gets a configured provider's vendor-reported usage over the trailing 30 days.\n */\nexport interface UsageReportForParameters {\n \n /**\n * The provider to ask.\n */\n providerId: Guid;\n}\n\n\n/**\n * Gets a configured provider's vendor-reported usage over the trailing 30 days.\n */\nexport class UsageReportFor extends QueryFor<AIProviderUsageReport, UsageReportForParameters> {\n readonly route: string = '/api/a-i/providers/usage-reporting/usage-report-for';\n readonly queryName: string = 'Cratis.AI.Providers.UsageReporting.AIProviderUsageReport.UsageReportFor';\n readonly treatWarningsAsErrors: boolean = false;\n readonly roles: string[] = [];\n readonly defaultValue: AIProviderUsageReport = {} as any;\n\n constructor() {\n super(AIProviderUsageReport, false);\n }\n\n get requiredRequestParameters(): string[] {\n return [\n 'providerId',\n ];\n }\n\n readonly parameterDescriptors: ParameterDescriptor[] = [\n new ParameterDescriptor('providerId', Guid, false),\n ];\n\n providerId!: Guid;\n\n\n static use(args?: UsageReportForParameters): [QueryResultWithState<AIProviderUsageReport>, PerformQuery<UsageReportForParameters>, SetSorting] {\n return useQuery<AIProviderUsageReport, UsageReportFor, UsageReportForParameters>(UsageReportFor, args);\n }\n\n static useSuspense(args?: UsageReportForParameters): [QueryResultWithState<AIProviderUsageReport>, PerformQuery<UsageReportForParameters>, SetSorting] {\n return useSuspenseQuery<AIProviderUsageReport, UsageReportFor, UsageReportForParameters>(UsageReportFor, args);\n }\n\n static when(condition: boolean): QueryWhen<UsageReportFor, AIProviderUsageReport, UsageReportForParameters> {\n return new QueryWhen<UsageReportFor, AIProviderUsageReport, UsageReportForParameters>(UsageReportFor, condition);\n }\n}\n"],"names":["UsageReportFor","QueryFor","route","queryName","treatWarningsAsErrors","roles","defaultValue","AIProviderUsageReport","requiredRequestParameters","parameterDescriptors","ParameterDescriptor","Guid","providerId","use","args","useQuery","useSuspense","useSuspenseQuery","when","condition","QueryWhen"],"mappings":";;;;;;AAAA;AACA;;;AAyBA;;IAGO,MAAMA,cAAAA,SAAuBC,QAAAA,CAAAA;AACvBC,IAAAA,KAAAA,GAAgB,qDAAA;AAChBC,IAAAA,SAAAA,GAAoB,yEAAA;AACpBC,IAAAA,qBAAAA,GAAiC,KAAA;AACjCC,IAAAA,KAAAA,GAAkB,EAAE;AACpBC,IAAAA,YAAAA,GAAsC,EAAC;IAEhD,WAAA,EAAc;AACV,QAAA,KAAK,CAACC,qBAAAA,EAAuB,KAAA,CAAA;AACjC,IAAA;AAEA,IAAA,IAAIC,yBAAAA,GAAsC;QACtC,OAAO;AACH,YAAA;AACH,SAAA;AACL,IAAA;IAESC,oBAAAA,GAA8C;QACnD,IAAIC,mBAAAA,CAAoB,cAAcC,IAAAA,EAAM,KAAA;KAC/C;IAEDC,UAAAA;IAGA,OAAOC,GAAAA,CAAIC,IAA+B,EAAqG;AAC3I,QAAA,OAAOC,SAA0Ef,cAAAA,EAAgBc,IAAAA,CAAAA;AACrG,IAAA;IAEA,OAAOE,WAAAA,CAAYF,IAA+B,EAAqG;AACnJ,QAAA,OAAOG,iBAAkFjB,cAAAA,EAAgBc,IAAAA,CAAAA;AAC7G,IAAA;IAEA,OAAOI,IAAAA,CAAKC,SAAkB,EAA8E;QACxG,OAAO,IAAIC,UAA2EpB,cAAAA,EAAgBmB,SAAAA,CAAAA;AAC1G,IAAA;AACJ;;;;"}
1
+ {"version":3,"file":"UsageReportFor.js","sources":["../../../../../generated/Providers/UsageReporting/UsageReportFor.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Providers.UsageReporting.AIProviderUsageReport. Time: 2026-09-23T09:39:57.7334316Z. Hash: EFC854588D809BFD96848460C38A25811BBABA0CBB4220CE50433D73B67F315E\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n// eslint-disable-next-line header/header\nimport { QueryFor, QueryResultWithState } from '@cratis/arc/queries';\nimport { useQuery, useSuspenseQuery, PerformQuery, SetSorting, QueryWhen } from '@cratis/arc.react/queries';\nimport { ParameterDescriptor } from '@cratis/arc/reflection';\nimport { Guid } from '@cratis/fundamentals';\nimport { AIProviderUsageReport } from './AIProviderUsageReport';\n\n\n/**\n * Gets a configured provider's vendor-reported usage over the trailing 30 days.\n */\nexport interface UsageReportForParameters {\n \n /**\n * The provider to ask.\n */\n providerId: Guid;\n}\n\n\n/**\n * Gets a configured provider's vendor-reported usage over the trailing 30 days.\n */\nexport class UsageReportFor extends QueryFor<AIProviderUsageReport, UsageReportForParameters> {\n readonly route: string = '/api/a-i/providers/usage-reporting/usage-report-for';\n readonly queryName: string = 'Cratis.AI.Providers.UsageReporting.AIProviderUsageReport.UsageReportFor';\n readonly treatWarningsAsErrors: boolean = false;\n readonly roles: string[] = [];\n readonly defaultValue: AIProviderUsageReport = {} as any;\n\n constructor() {\n super(AIProviderUsageReport, false);\n }\n\n get requiredRequestParameters(): string[] {\n return [\n 'providerId',\n ];\n }\n\n readonly parameterDescriptors: ParameterDescriptor[] = [\n new ParameterDescriptor('providerId', Guid, false),\n ];\n\n providerId!: Guid;\n\n\n static use(args?: UsageReportForParameters): [QueryResultWithState<AIProviderUsageReport>, PerformQuery<UsageReportForParameters>, SetSorting] {\n return useQuery<AIProviderUsageReport, UsageReportFor, UsageReportForParameters>(UsageReportFor, args);\n }\n\n static useSuspense(args?: UsageReportForParameters): [QueryResultWithState<AIProviderUsageReport>, PerformQuery<UsageReportForParameters>, SetSorting] {\n return useSuspenseQuery<AIProviderUsageReport, UsageReportFor, UsageReportForParameters>(UsageReportFor, args);\n }\n\n static when(condition: boolean): QueryWhen<UsageReportFor, AIProviderUsageReport, UsageReportForParameters> {\n return new QueryWhen<UsageReportFor, AIProviderUsageReport, UsageReportForParameters>(UsageReportFor, condition);\n }\n}\n"],"names":["UsageReportFor","QueryFor","route","queryName","treatWarningsAsErrors","roles","defaultValue","AIProviderUsageReport","requiredRequestParameters","parameterDescriptors","ParameterDescriptor","Guid","providerId","use","args","useQuery","useSuspense","useSuspenseQuery","when","condition","QueryWhen"],"mappings":";;;;;;AAAA;AACA;;;AAyBA;;IAGO,MAAMA,cAAAA,SAAuBC,QAAAA,CAAAA;AACvBC,IAAAA,KAAAA,GAAgB,qDAAA;AAChBC,IAAAA,SAAAA,GAAoB,yEAAA;AACpBC,IAAAA,qBAAAA,GAAiC,KAAA;AACjCC,IAAAA,KAAAA,GAAkB,EAAE;AACpBC,IAAAA,YAAAA,GAAsC,EAAC;IAEhD,WAAA,EAAc;AACV,QAAA,KAAK,CAACC,qBAAAA,EAAuB,KAAA,CAAA;AACjC,IAAA;AAEA,IAAA,IAAIC,yBAAAA,GAAsC;QACtC,OAAO;AACH,YAAA;AACH,SAAA;AACL,IAAA;IAESC,oBAAAA,GAA8C;QACnD,IAAIC,mBAAAA,CAAoB,cAAcC,IAAAA,EAAM,KAAA;KAC/C;IAEDC,UAAAA;IAGA,OAAOC,GAAAA,CAAIC,IAA+B,EAAqG;AAC3I,QAAA,OAAOC,SAA0Ef,cAAAA,EAAgBc,IAAAA,CAAAA;AACrG,IAAA;IAEA,OAAOE,WAAAA,CAAYF,IAA+B,EAAqG;AACnJ,QAAA,OAAOG,iBAAkFjB,cAAAA,EAAgBc,IAAAA,CAAAA;AAC7G,IAAA;IAEA,OAAOI,IAAAA,CAAKC,SAAkB,EAA8E;QACxG,OAAO,IAAIC,UAA2EpB,cAAAA,EAAgBmB,SAAAA,CAAAA;AAC1G,IAAA;AACJ;;;;"}
@@ -1,8 +1,8 @@
1
- import { DateOnly } from '@cratis/fundamentals';
2
1
  import { Guid } from '@cratis/fundamentals';
3
2
  import { TimeSpan } from '@cratis/fundamentals';
4
3
  export declare class AgentUsageByDay {
5
- day: DateOnly;
4
+ bucketKey: string;
5
+ day: string;
6
6
  providerId?: Guid;
7
7
  agentId?: string;
8
8
  purpose: string;
@@ -10,9 +10,11 @@ export declare class AgentUsageByDay {
10
10
  sessions: number;
11
11
  inputTokens: number;
12
12
  outputTokens: number;
13
+ cachedTokens: number;
13
14
  cost: number;
14
- duration: TimeSpan;
15
+ durationMs: number;
15
16
  cpuSeconds: number;
16
17
  memoryBytes: number;
18
+ duration: TimeSpan;
17
19
  }
18
20
  //# sourceMappingURL=AgentUsageByDay.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AgentUsageByDay.d.ts","sourceRoot":"","sources":["../../../../../generated/Usage/Daily/AgentUsageByDay.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAKhD,qBAAa,eAAe;IAMxB,GAAG,EAAG,QAAQ,CAAC;IAMf,UAAU,CAAC,EAAE,IAAI,CAAC;IAMlB,OAAO,CAAC,EAAE,MAAM,CAAC;IAMjB,OAAO,EAAG,MAAM,CAAC;IAMjB,KAAK,EAAG,MAAM,CAAC;IAMf,QAAQ,EAAG,MAAM,CAAC;IAMlB,WAAW,EAAG,MAAM,CAAC;IAMrB,YAAY,EAAG,MAAM,CAAC;IAMtB,IAAI,EAAG,MAAM,CAAC;IAMd,QAAQ,EAAG,QAAQ,CAAC;IAMpB,UAAU,EAAG,MAAM,CAAC;IAMpB,WAAW,EAAG,MAAM,CAAC;CACxB"}
1
+ {"version":3,"file":"AgentUsageByDay.d.ts","sourceRoot":"","sources":["../../../../../generated/Usage/Daily/AgentUsageByDay.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAKhD,qBAAa,eAAe;IAMxB,SAAS,EAAG,MAAM,CAAC;IAMnB,GAAG,EAAG,MAAM,CAAC;IAMb,UAAU,CAAC,EAAE,IAAI,CAAC;IAMlB,OAAO,CAAC,EAAE,MAAM,CAAC;IAMjB,OAAO,EAAG,MAAM,CAAC;IAMjB,KAAK,EAAG,MAAM,CAAC;IAMf,QAAQ,EAAG,MAAM,CAAC;IAMlB,WAAW,EAAG,MAAM,CAAC;IAMrB,YAAY,EAAG,MAAM,CAAC;IAMtB,YAAY,EAAG,MAAM,CAAC;IAMtB,IAAI,EAAG,MAAM,CAAC;IAMd,UAAU,EAAG,MAAM,CAAC;IAMpB,UAAU,EAAG,MAAM,CAAC;IAMpB,WAAW,EAAG,MAAM,CAAC;IAMrB,QAAQ,EAAG,QAAQ,CAAC;CACvB"}
@@ -1,4 +1,4 @@
1
- import { field, DateOnly, Guid, TimeSpan } from '@cratis/fundamentals';
1
+ import { field, Guid, TimeSpan } from '@cratis/fundamentals';
2
2
 
3
3
  function _ts_decorate(decorators, target, key, desc) {
4
4
  var c = arguments.length, r = c < 3 ? target : desc, d;
@@ -21,6 +21,9 @@ function _ts_metadata(metadataKey, metadataValue) {
21
21
  /**
22
22
  * One day's agent usage along one dimension - which provider served it, which agent ran it, on which model, for what purpose. A consumer's own usage page aggregates these rows client-side, so its filters can narrow the same trailing window without a second round trip per filter. Generalized from Direct's `AIUsage.DailyUsage.AgentUsageByDay` (plan Section 5.3d) - unlike Direct's original, which read from its own `IRecordedWork`/`ILanguageModelJobs` and so bucketed work and completions separately, this reads a single source, the package's own {@link AgentSessionUsageRecorded}, since that event already carries every dimension both of Direct's sources had to be combined to get.
23
23
  */ class AgentUsageByDay {
24
+ /**
25
+ * The day/provider/agent/purpose/model bucket this row accumulates.
26
+ */ bucketKey;
24
27
  /**
25
28
  * The calendar day the usage falls in (UTC).
26
29
  */ day;
@@ -45,22 +48,32 @@ function _ts_metadata(metadataKey, metadataValue) {
45
48
  /**
46
49
  * The output tokens those sessions produced.
47
50
  */ outputTokens;
51
+ /**
52
+ * The prompt tokens those sessions had served from the provider's own cache.
53
+ */ cachedTokens;
48
54
  /**
49
55
  * The reported cost of those sessions, in USD.
50
56
  */ cost;
51
57
  /**
52
- * How long those sessions ran in total.
53
- */ duration;
58
+ * How long those sessions ran in total, in milliseconds.
59
+ */ durationMs;
54
60
  /**
55
61
  * The CPU time those sessions consumed in total - what answers "how much CPU went to investigation versus planning versus implementation" once bucketed by {@link Purpose}.
56
62
  */ cpuSeconds;
57
63
  /**
58
64
  * The peak memory those sessions consumed, summed - the same convention `AgentUsageByWeek`/`AgentUsageByMonth` already use for a resource figure that is really a per-session peak, not a naturally additive quantity.
59
65
  */ memoryBytes;
66
+ /**
67
+ * Gets the total time the sessions in this bucket ran for.
68
+ */ duration;
60
69
  }
61
70
  _ts_decorate([
62
- field(DateOnly),
63
- _ts_metadata("design:type", typeof DateOnly === "undefined" ? Object : DateOnly)
71
+ field(String),
72
+ _ts_metadata("design:type", String)
73
+ ], AgentUsageByDay.prototype, "bucketKey", void 0);
74
+ _ts_decorate([
75
+ field(String),
76
+ _ts_metadata("design:type", String)
64
77
  ], AgentUsageByDay.prototype, "day", void 0);
65
78
  _ts_decorate([
66
79
  field(Guid),
@@ -90,14 +103,18 @@ _ts_decorate([
90
103
  field(Number),
91
104
  _ts_metadata("design:type", Number)
92
105
  ], AgentUsageByDay.prototype, "outputTokens", void 0);
106
+ _ts_decorate([
107
+ field(Number),
108
+ _ts_metadata("design:type", Number)
109
+ ], AgentUsageByDay.prototype, "cachedTokens", void 0);
93
110
  _ts_decorate([
94
111
  field(Number),
95
112
  _ts_metadata("design:type", Number)
96
113
  ], AgentUsageByDay.prototype, "cost", void 0);
97
114
  _ts_decorate([
98
- field(TimeSpan),
99
- _ts_metadata("design:type", typeof TimeSpan === "undefined" ? Object : TimeSpan)
100
- ], AgentUsageByDay.prototype, "duration", void 0);
115
+ field(Number),
116
+ _ts_metadata("design:type", Number)
117
+ ], AgentUsageByDay.prototype, "durationMs", void 0);
101
118
  _ts_decorate([
102
119
  field(Number),
103
120
  _ts_metadata("design:type", Number)
@@ -106,6 +123,10 @@ _ts_decorate([
106
123
  field(Number),
107
124
  _ts_metadata("design:type", Number)
108
125
  ], AgentUsageByDay.prototype, "memoryBytes", void 0);
126
+ _ts_decorate([
127
+ field(TimeSpan),
128
+ _ts_metadata("design:type", typeof TimeSpan === "undefined" ? Object : TimeSpan)
129
+ ], AgentUsageByDay.prototype, "duration", void 0);
109
130
 
110
131
  export { AgentUsageByDay };
111
132
  //# sourceMappingURL=AgentUsageByDay.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AgentUsageByDay.js","sources":["../../../../../generated/Usage/Daily/AgentUsageByDay.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Usage.Daily.AgentUsageByDay. Time: 2026-09-22T21:58:26.6246419Z. Hash: 2674C66E7E2AD98DE559BB6B1440B43F82F5D16C29E8A0CBFCA5948A5A8A3314\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n// eslint-disable-next-line header/header\nimport { field } from '@cratis/fundamentals';\nimport { DateOnly } from '@cratis/fundamentals';\nimport { Guid } from '@cratis/fundamentals';\nimport { TimeSpan } from '@cratis/fundamentals';\n\n/**\n * One day's agent usage along one dimension - which provider served it, which agent ran it, on which model, for what purpose. A consumer's own usage page aggregates these rows client-side, so its filters can narrow the same trailing window without a second round trip per filter. Generalized from Direct's `AIUsage.DailyUsage.AgentUsageByDay` (plan Section 5.3d) - unlike Direct's original, which read from its own `IRecordedWork`/`ILanguageModelJobs` and so bucketed work and completions separately, this reads a single source, the package's own {@link AgentSessionUsageRecorded}, since that event already carries every dimension both of Direct's sources had to be combined to get.\n */\nexport class AgentUsageByDay {\n\n /**\n * The calendar day the usage falls in (UTC).\n */\n @field(DateOnly)\n day!: DateOnly;\n\n /**\n * The AI provider that served the work - `null` when none was resolved.\n */\n @field(Guid)\n providerId?: Guid;\n\n /**\n * The agent that did the work - `null` when none was resolved.\n */\n @field(String)\n agentId?: string;\n\n /**\n * What the sessions that day were for.\n */\n @field(String)\n purpose!: string;\n\n /**\n * The model the work ran on.\n */\n @field(String)\n model!: string;\n\n /**\n * How many agent sessions were recorded that day.\n */\n @field(Number)\n sessions!: number;\n\n /**\n * The input tokens those sessions consumed.\n */\n @field(Number)\n inputTokens!: number;\n\n /**\n * The output tokens those sessions produced.\n */\n @field(Number)\n outputTokens!: number;\n\n /**\n * The reported cost of those sessions, in USD.\n */\n @field(Number)\n cost!: number;\n\n /**\n * How long those sessions ran in total.\n */\n @field(TimeSpan)\n duration!: TimeSpan;\n\n /**\n * The CPU time those sessions consumed in total - what answers \"how much CPU went to investigation versus planning versus implementation\" once bucketed by {@link Purpose}.\n */\n @field(Number)\n cpuSeconds!: number;\n\n /**\n * The peak memory those sessions consumed, summed - the same convention `AgentUsageByWeek`/`AgentUsageByMonth` already use for a resource figure that is really a per-session peak, not a naturally additive quantity.\n */\n @field(Number)\n memoryBytes!: number;\n}\n"],"names":["AgentUsageByDay","day","providerId","agentId","purpose","model","sessions","inputTokens","outputTokens","cost","duration","cpuSeconds","memoryBytes"],"mappings":";;;;;;;;;;;;;;;;;;;;AAYA;;AAEC,IACM,MAAMA,eAAAA,CAAAA;AAET;;AAEC,QACD,GACAC;AAEA;;AAEC,QACD,UACAC;AAEA;;AAEC,QACD,OACAC;AAEA;;AAEC,QACD,OACAC;AAEA;;AAEC,QACD,KACAC;AAEA;;AAEC,QACD,QACAC;AAEA;;AAEC,QACD,WACAC;AAEA;;AAEC,QACD,YACAC;AAEA;;AAEC,QACD,IACAC;AAEA;;AAEC,QACD,QACAC;AAEA;;AAEC,QACD,UACAC;AAEA;;AAEC,QACD,WACAC;AACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"AgentUsageByDay.js","sources":["../../../../../generated/Usage/Daily/AgentUsageByDay.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Usage.Daily.AgentUsageByDay. Time: 2026-09-23T09:39:57.8049607Z. Hash: 04AC0B8F35E01390F943EBFF80D2D063A16F61D63666A0893D055AF150F721C8\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n// eslint-disable-next-line header/header\nimport { field } from '@cratis/fundamentals';\nimport { Guid } from '@cratis/fundamentals';\nimport { TimeSpan } from '@cratis/fundamentals';\n\n/**\n * One day's agent usage along one dimension - which provider served it, which agent ran it, on which model, for what purpose. A consumer's own usage page aggregates these rows client-side, so its filters can narrow the same trailing window without a second round trip per filter. Generalized from Direct's `AIUsage.DailyUsage.AgentUsageByDay` (plan Section 5.3d) - unlike Direct's original, which read from its own `IRecordedWork`/`ILanguageModelJobs` and so bucketed work and completions separately, this reads a single source, the package's own {@link AgentSessionUsageRecorded}, since that event already carries every dimension both of Direct's sources had to be combined to get.\n */\nexport class AgentUsageByDay {\n\n /**\n * The day/provider/agent/purpose/model bucket this row accumulates.\n */\n @field(String)\n bucketKey!: string;\n\n /**\n * The calendar day the usage falls in (UTC).\n */\n @field(String)\n day!: string;\n\n /**\n * The AI provider that served the work - `null` when none was resolved.\n */\n @field(Guid)\n providerId?: Guid;\n\n /**\n * The agent that did the work - `null` when none was resolved.\n */\n @field(String)\n agentId?: string;\n\n /**\n * What the sessions that day were for.\n */\n @field(String)\n purpose!: string;\n\n /**\n * The model the work ran on.\n */\n @field(String)\n model!: string;\n\n /**\n * How many agent sessions were recorded that day.\n */\n @field(Number)\n sessions!: number;\n\n /**\n * The input tokens those sessions consumed.\n */\n @field(Number)\n inputTokens!: number;\n\n /**\n * The output tokens those sessions produced.\n */\n @field(Number)\n outputTokens!: number;\n\n /**\n * The prompt tokens those sessions had served from the provider's own cache.\n */\n @field(Number)\n cachedTokens!: number;\n\n /**\n * The reported cost of those sessions, in USD.\n */\n @field(Number)\n cost!: number;\n\n /**\n * How long those sessions ran in total, in milliseconds.\n */\n @field(Number)\n durationMs!: number;\n\n /**\n * The CPU time those sessions consumed in total - what answers \"how much CPU went to investigation versus planning versus implementation\" once bucketed by {@link Purpose}.\n */\n @field(Number)\n cpuSeconds!: number;\n\n /**\n * The peak memory those sessions consumed, summed - the same convention `AgentUsageByWeek`/`AgentUsageByMonth` already use for a resource figure that is really a per-session peak, not a naturally additive quantity.\n */\n @field(Number)\n memoryBytes!: number;\n\n /**\n * Gets the total time the sessions in this bucket ran for.\n */\n @field(TimeSpan)\n duration!: TimeSpan;\n}\n"],"names":["AgentUsageByDay","bucketKey","day","providerId","agentId","purpose","model","sessions","inputTokens","outputTokens","cachedTokens","cost","durationMs","cpuSeconds","memoryBytes","duration"],"mappings":";;;;;;;;;;;;;;;;;;;;AAWA;;AAEC,IACM,MAAMA,eAAAA,CAAAA;AAET;;AAEC,QACD,SACAC;AAEA;;AAEC,QACD,GACAC;AAEA;;AAEC,QACD,UACAC;AAEA;;AAEC,QACD,OACAC;AAEA;;AAEC,QACD,OACAC;AAEA;;AAEC,QACD,KACAC;AAEA;;AAEC,QACD,QACAC;AAEA;;AAEC,QACD,WACAC;AAEA;;AAEC,QACD,YACAC;AAEA;;AAEC,QACD,YACAC;AAEA;;AAEC,QACD,IACAC;AAEA;;AAEC,QACD,UACAC;AAEA;;AAEC,QACD,UACAC;AAEA;;AAEC,QACD,WACAC;AAEA;;AAEC,QACD,QACAC;AACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -2,7 +2,7 @@ import { QueryFor, Paging } from '@cratis/arc/queries';
2
2
  import { useQuery, useQueryWithPaging, useSuspenseQuery, useSuspenseQueryWithPaging, QueryWhen } from '@cratis/arc.react/queries';
3
3
  import { AgentUsageByDay } from './AgentUsageByDay.js';
4
4
 
5
- // @generated by Cratis. Source: Cratis.AI.Usage.Daily.AgentUsageByDay. Time: 2026-09-22T21:58:26.5464526Z. Hash: D1AB14922E03E8E3709610E8C2476E5A080396D759345FA976233AAF9588F5B5
5
+ // @generated by Cratis. Source: Cratis.AI.Usage.Daily.AgentUsageByDay. Time: 2026-09-23T09:39:57.7485782Z. Hash: D1AB14922E03E8E3709610E8C2476E5A080396D759345FA976233AAF9588F5B5
6
6
  /*---------------------------------------------------------------------------------------------
7
7
  * **DO NOT EDIT** - This file is an automatically generated file.
8
8
  *--------------------------------------------------------------------------------------------*/ /* eslint-disable sort-imports */ // eslint-disable-next-line header/header
@@ -1 +1 @@
1
- {"version":3,"file":"LastYear.js","sources":["../../../../../generated/Usage/Daily/LastYear.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Usage.Daily.AgentUsageByDay. Time: 2026-09-22T21:58:26.5464526Z. Hash: D1AB14922E03E8E3709610E8C2476E5A080396D759345FA976233AAF9588F5B5\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n// eslint-disable-next-line header/header\nimport { QueryFor, QueryResultWithState, Sorting, Paging } from '@cratis/arc/queries';\nimport { useQuery, useQueryWithPaging, useSuspenseQuery, useSuspenseQueryWithPaging, PerformQuery, SetSorting, SetPage, SetPageSize, QueryWhen } from '@cratis/arc.react/queries';\nimport { ParameterDescriptor } from '@cratis/arc/reflection';\nimport { AgentUsageByDay } from './AgentUsageByDay';\n\nclass LastYearSortBy {\n\n constructor(readonly query: LastYear) {\n }\n\n}\n\nclass LastYearSortByWithoutQuery {\n\n}\n\n\n/**\n * Gets every day's usage within the trailing window, oldest day first, bucketed per provider/agent/purpose/model combination so a consumer's page can narrow by any of them.\n */\nexport class LastYear extends QueryFor<AgentUsageByDay[]> {\n readonly route: string = '/api/a-i/usage/daily/last-year';\n readonly queryName: string = 'Cratis.AI.Usage.Daily.AgentUsageByDay.LastYear';\n readonly treatWarningsAsErrors: boolean = false;\n readonly roles: string[] = [];\n readonly defaultValue: AgentUsageByDay[] = [];\n private readonly _sortBy: LastYearSortBy;\n private static readonly _sortBy: LastYearSortByWithoutQuery = new LastYearSortByWithoutQuery();\n\n constructor() {\n super(AgentUsageByDay, true);\n this._sortBy = new LastYearSortBy(this);\n }\n\n get requiredRequestParameters(): string[] {\n return [\n ];\n }\n\n readonly parameterDescriptors: ParameterDescriptor[] = [\n ];\n\n\n get sortBy(): LastYearSortBy {\n return this._sortBy;\n }\n\n static get sortBy(): LastYearSortByWithoutQuery {\n return this._sortBy;\n }\n\n static use(sorting?: Sorting): [QueryResultWithState<AgentUsageByDay[]>, PerformQuery, SetSorting] {\n return useQuery<AgentUsageByDay[], LastYear>(LastYear, undefined, sorting);\n }\n\n static useWithPaging(pageSize: number, sorting?: Sorting): [QueryResultWithState<AgentUsageByDay[]>, PerformQuery, SetSorting, SetPage, SetPageSize] {\n return useQueryWithPaging<AgentUsageByDay[], LastYear>(LastYear, new Paging(0, pageSize), undefined, sorting);\n }\n\n static useSuspense(sorting?: Sorting): [QueryResultWithState<AgentUsageByDay[]>, PerformQuery, SetSorting] {\n return useSuspenseQuery<AgentUsageByDay[], LastYear>(LastYear, undefined, sorting);\n }\n\n static useSuspenseWithPaging(pageSize: number, sorting?: Sorting): [QueryResultWithState<AgentUsageByDay[]>, PerformQuery, SetSorting, SetPage, SetPageSize] {\n return useSuspenseQueryWithPaging<AgentUsageByDay[], LastYear>(LastYear, new Paging(0, pageSize), undefined, sorting);\n }\n\n static when(condition: boolean): QueryWhen<LastYear, AgentUsageByDay[]> {\n return new QueryWhen<LastYear, AgentUsageByDay[]>(LastYear, condition);\n }\n}\n"],"names":["LastYearSortBy","query","LastYearSortByWithoutQuery","LastYear","QueryFor","route","queryName","treatWarningsAsErrors","roles","defaultValue","_sortBy","AgentUsageByDay","requiredRequestParameters","parameterDescriptors","sortBy","use","sorting","useQuery","undefined","useWithPaging","pageSize","useQueryWithPaging","Paging","useSuspense","useSuspenseQuery","useSuspenseWithPaging","useSuspenseQueryWithPaging","when","condition","QueryWhen"],"mappings":";;;;AAAA;AACA;;;AAWA,MAAMA,cAAAA,CAAAA;;IAEF,WAAA,CAAqBC,KAAe,CAAE;aAAjBA,KAAAA,GAAAA,KAAAA;AACrB,IAAA;AAEJ;AAEA,MAAMC,0BAAAA,CAAAA;AAEN;AAGA;;IAGO,MAAMC,QAAAA,SAAiBC,QAAAA,CAAAA;AACjBC,IAAAA,KAAAA,GAAgB,gCAAA;AAChBC,IAAAA,SAAAA,GAAoB,gDAAA;AACpBC,IAAAA,qBAAAA,GAAiC,KAAA;AACjCC,IAAAA,KAAAA,GAAkB,EAAE;AACpBC,IAAAA,YAAAA,GAAkC,EAAE;IAC5BC,OAAAA;IACjB,OAAwBA,OAAAA,GAAsC,IAAIR,0BAAAA,EAAAA;IAElE,WAAA,EAAc;AACV,QAAA,KAAK,CAACS,eAAAA,EAAiB,IAAA,CAAA;AACvB,QAAA,IAAI,CAACD,OAAO,GAAG,IAAIV,eAAe,IAAI,CAAA;AAC1C,IAAA;AAEA,IAAA,IAAIY,yBAAAA,GAAsC;AACtC,QAAA,OAAO,EACN;AACL,IAAA;AAESC,IAAAA,oBAAAA,GAA8C,EACtD;AAGD,IAAA,IAAIC,MAAAA,GAAyB;QACzB,OAAO,IAAI,CAACJ,OAAO;AACvB,IAAA;AAEA,IAAA,WAAWI,MAAAA,GAAqC;QAC5C,OAAO,IAAI,CAACJ,OAAO;AACvB,IAAA;IAEA,OAAOK,GAAAA,CAAIC,OAAiB,EAAuE;QAC/F,OAAOC,QAAAA,CAAsCd,UAAUe,SAAAA,EAAWF,OAAAA,CAAAA;AACtE,IAAA;AAEA,IAAA,OAAOG,aAAAA,CAAcC,QAAgB,EAAEJ,OAAiB,EAA6F;AACjJ,QAAA,OAAOK,mBAAgDlB,QAAAA,EAAU,IAAImB,MAAAA,CAAO,CAAA,EAAGF,WAAWF,SAAAA,EAAWF,OAAAA,CAAAA;AACzG,IAAA;IAEA,OAAOO,WAAAA,CAAYP,OAAiB,EAAuE;QACvG,OAAOQ,gBAAAA,CAA8CrB,UAAUe,SAAAA,EAAWF,OAAAA,CAAAA;AAC9E,IAAA;AAEA,IAAA,OAAOS,qBAAAA,CAAsBL,QAAgB,EAAEJ,OAAiB,EAA6F;AACzJ,QAAA,OAAOU,2BAAwDvB,QAAAA,EAAU,IAAImB,MAAAA,CAAO,CAAA,EAAGF,WAAWF,SAAAA,EAAWF,OAAAA,CAAAA;AACjH,IAAA;IAEA,OAAOW,IAAAA,CAAKC,SAAkB,EAA0C;QACpE,OAAO,IAAIC,UAAuC1B,QAAAA,EAAUyB,SAAAA,CAAAA;AAChE,IAAA;AACJ;;;;"}
1
+ {"version":3,"file":"LastYear.js","sources":["../../../../../generated/Usage/Daily/LastYear.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Usage.Daily.AgentUsageByDay. Time: 2026-09-23T09:39:57.7485782Z. Hash: D1AB14922E03E8E3709610E8C2476E5A080396D759345FA976233AAF9588F5B5\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n// eslint-disable-next-line header/header\nimport { QueryFor, QueryResultWithState, Sorting, Paging } from '@cratis/arc/queries';\nimport { useQuery, useQueryWithPaging, useSuspenseQuery, useSuspenseQueryWithPaging, PerformQuery, SetSorting, SetPage, SetPageSize, QueryWhen } from '@cratis/arc.react/queries';\nimport { ParameterDescriptor } from '@cratis/arc/reflection';\nimport { AgentUsageByDay } from './AgentUsageByDay';\n\nclass LastYearSortBy {\n\n constructor(readonly query: LastYear) {\n }\n\n}\n\nclass LastYearSortByWithoutQuery {\n\n}\n\n\n/**\n * Gets every day's usage within the trailing window, oldest day first, bucketed per provider/agent/purpose/model combination so a consumer's page can narrow by any of them.\n */\nexport class LastYear extends QueryFor<AgentUsageByDay[]> {\n readonly route: string = '/api/a-i/usage/daily/last-year';\n readonly queryName: string = 'Cratis.AI.Usage.Daily.AgentUsageByDay.LastYear';\n readonly treatWarningsAsErrors: boolean = false;\n readonly roles: string[] = [];\n readonly defaultValue: AgentUsageByDay[] = [];\n private readonly _sortBy: LastYearSortBy;\n private static readonly _sortBy: LastYearSortByWithoutQuery = new LastYearSortByWithoutQuery();\n\n constructor() {\n super(AgentUsageByDay, true);\n this._sortBy = new LastYearSortBy(this);\n }\n\n get requiredRequestParameters(): string[] {\n return [\n ];\n }\n\n readonly parameterDescriptors: ParameterDescriptor[] = [\n ];\n\n\n get sortBy(): LastYearSortBy {\n return this._sortBy;\n }\n\n static get sortBy(): LastYearSortByWithoutQuery {\n return this._sortBy;\n }\n\n static use(sorting?: Sorting): [QueryResultWithState<AgentUsageByDay[]>, PerformQuery, SetSorting] {\n return useQuery<AgentUsageByDay[], LastYear>(LastYear, undefined, sorting);\n }\n\n static useWithPaging(pageSize: number, sorting?: Sorting): [QueryResultWithState<AgentUsageByDay[]>, PerformQuery, SetSorting, SetPage, SetPageSize] {\n return useQueryWithPaging<AgentUsageByDay[], LastYear>(LastYear, new Paging(0, pageSize), undefined, sorting);\n }\n\n static useSuspense(sorting?: Sorting): [QueryResultWithState<AgentUsageByDay[]>, PerformQuery, SetSorting] {\n return useSuspenseQuery<AgentUsageByDay[], LastYear>(LastYear, undefined, sorting);\n }\n\n static useSuspenseWithPaging(pageSize: number, sorting?: Sorting): [QueryResultWithState<AgentUsageByDay[]>, PerformQuery, SetSorting, SetPage, SetPageSize] {\n return useSuspenseQueryWithPaging<AgentUsageByDay[], LastYear>(LastYear, new Paging(0, pageSize), undefined, sorting);\n }\n\n static when(condition: boolean): QueryWhen<LastYear, AgentUsageByDay[]> {\n return new QueryWhen<LastYear, AgentUsageByDay[]>(LastYear, condition);\n }\n}\n"],"names":["LastYearSortBy","query","LastYearSortByWithoutQuery","LastYear","QueryFor","route","queryName","treatWarningsAsErrors","roles","defaultValue","_sortBy","AgentUsageByDay","requiredRequestParameters","parameterDescriptors","sortBy","use","sorting","useQuery","undefined","useWithPaging","pageSize","useQueryWithPaging","Paging","useSuspense","useSuspenseQuery","useSuspenseWithPaging","useSuspenseQueryWithPaging","when","condition","QueryWhen"],"mappings":";;;;AAAA;AACA;;;AAWA,MAAMA,cAAAA,CAAAA;;IAEF,WAAA,CAAqBC,KAAe,CAAE;aAAjBA,KAAAA,GAAAA,KAAAA;AACrB,IAAA;AAEJ;AAEA,MAAMC,0BAAAA,CAAAA;AAEN;AAGA;;IAGO,MAAMC,QAAAA,SAAiBC,QAAAA,CAAAA;AACjBC,IAAAA,KAAAA,GAAgB,gCAAA;AAChBC,IAAAA,SAAAA,GAAoB,gDAAA;AACpBC,IAAAA,qBAAAA,GAAiC,KAAA;AACjCC,IAAAA,KAAAA,GAAkB,EAAE;AACpBC,IAAAA,YAAAA,GAAkC,EAAE;IAC5BC,OAAAA;IACjB,OAAwBA,OAAAA,GAAsC,IAAIR,0BAAAA,EAAAA;IAElE,WAAA,EAAc;AACV,QAAA,KAAK,CAACS,eAAAA,EAAiB,IAAA,CAAA;AACvB,QAAA,IAAI,CAACD,OAAO,GAAG,IAAIV,eAAe,IAAI,CAAA;AAC1C,IAAA;AAEA,IAAA,IAAIY,yBAAAA,GAAsC;AACtC,QAAA,OAAO,EACN;AACL,IAAA;AAESC,IAAAA,oBAAAA,GAA8C,EACtD;AAGD,IAAA,IAAIC,MAAAA,GAAyB;QACzB,OAAO,IAAI,CAACJ,OAAO;AACvB,IAAA;AAEA,IAAA,WAAWI,MAAAA,GAAqC;QAC5C,OAAO,IAAI,CAACJ,OAAO;AACvB,IAAA;IAEA,OAAOK,GAAAA,CAAIC,OAAiB,EAAuE;QAC/F,OAAOC,QAAAA,CAAsCd,UAAUe,SAAAA,EAAWF,OAAAA,CAAAA;AACtE,IAAA;AAEA,IAAA,OAAOG,aAAAA,CAAcC,QAAgB,EAAEJ,OAAiB,EAA6F;AACjJ,QAAA,OAAOK,mBAAgDlB,QAAAA,EAAU,IAAImB,MAAAA,CAAO,CAAA,EAAGF,WAAWF,SAAAA,EAAWF,OAAAA,CAAAA;AACzG,IAAA;IAEA,OAAOO,WAAAA,CAAYP,OAAiB,EAAuE;QACvG,OAAOQ,gBAAAA,CAA8CrB,UAAUe,SAAAA,EAAWF,OAAAA,CAAAA;AAC9E,IAAA;AAEA,IAAA,OAAOS,qBAAAA,CAAsBL,QAAgB,EAAEJ,OAAiB,EAA6F;AACzJ,QAAA,OAAOU,2BAAwDvB,QAAAA,EAAU,IAAImB,MAAAA,CAAO,CAAA,EAAGF,WAAWF,SAAAA,EAAWF,OAAAA,CAAAA;AACjH,IAAA;IAEA,OAAOW,IAAAA,CAAKC,SAAkB,EAA0C;QACpE,OAAO,IAAIC,UAAuC1B,QAAAA,EAAUyB,SAAAA,CAAAA;AAChE,IAAA;AACJ;;;;"}
@@ -3,7 +3,7 @@ import { useCommand } from '@cratis/arc.react/commands';
3
3
  import { PropertyDescriptor } from '@cratis/arc/reflection';
4
4
  import { Guid } from '@cratis/fundamentals';
5
5
 
6
- // @generated by Cratis. Source: Cratis.AI.Usage.RecordAgentSessionUsage. Time: 2026-09-22T21:58:26.1991304Z. Hash: 00C528E8CDF98B4B0BF929FA9126FE735831CC039DF99C4D50382C693DFFA5F6
6
+ // @generated by Cratis. Source: Cratis.AI.Usage.RecordAgentSessionUsage. Time: 2026-09-23T09:39:57.6536093Z. Hash: 00C528E8CDF98B4B0BF929FA9126FE735831CC039DF99C4D50382C693DFFA5F6
7
7
  /*---------------------------------------------------------------------------------------------
8
8
  * **DO NOT EDIT** - This file is an automatically generated file.
9
9
  *--------------------------------------------------------------------------------------------*/ /* eslint-disable sort-imports */ /* eslint-disable @typescript-eslint/no-empty-interface */ // eslint-disable-next-line header/header
@@ -1 +1 @@
1
- {"version":3,"file":"RecordAgentSessionUsage.js","sources":["../../../../generated/Usage/RecordAgentSessionUsage.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Usage.RecordAgentSessionUsage. Time: 2026-09-22T21:58:26.1991304Z. Hash: 00C528E8CDF98B4B0BF929FA9126FE735831CC039DF99C4D50382C693DFFA5F6\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n/* eslint-disable @typescript-eslint/no-empty-interface */\n// eslint-disable-next-line header/header\nimport { Command, CommandValidator } from '@cratis/arc/commands';\nimport { useCommand, SetCommandValues, ClearCommandValues } from '@cratis/arc.react/commands';\nimport { PropertyDescriptor } from '@cratis/arc/reflection';\nimport { Harness } from '../Harnesses/Harness';\nimport { Guid } from '@cratis/fundamentals';\n\n/**\n * Command for recording one agent session's usage - accepts the full harness callback payload shape (`status, detail, inputTokens, outputTokens, costUsd, durationMs, cpuSeconds, memoryBytes`, plus the resolution context a direct completion already has to hand) so both harness-run worker sessions and in-process completions record through the one command (plan Section 5.3c).\n */\nexport interface IRecordAgentSessionUsage {\n \n /**\n * The {@link AgentId} that did the work.\n */\n agent?: string;\n \n /**\n * Prompt tokens served from the provider's own cache.\n */\n cachedTokens?: number;\n \n /**\n * The reported cost, in USD.\n */\n costUsd?: number;\n \n /**\n * The CPU time a harness measured for the session.\n */\n cpuSeconds?: number;\n \n /**\n * How long the session took.\n */\n duration?: number;\n \n /**\n * The {@link Harness} the session ran under, when it was a harness-run job.\n */\n harness?: Harness;\n \n /**\n * Tokens the prompt consumed.\n */\n inputTokens?: number;\n \n /**\n * The peak memory a harness measured for the session.\n */\n memoryBytes?: number;\n \n /**\n * The model that served it.\n */\n model?: string;\n \n /**\n * Tokens the completion produced.\n */\n outputTokens?: number;\n \n /**\n * The {@link AIProviderId} that served it, when resolved through a configured provider.\n */\n provider?: Guid;\n \n /**\n * What the call was for.\n */\n purpose?: string;\n \n /**\n * The {@link AgentSessionId} the usage belongs to.\n */\n session?: string;\n}\n\nexport class RecordAgentSessionUsageValidator extends CommandValidator<IRecordAgentSessionUsage> {\n constructor() {\n super();\n this.ruleFor(c => c.cachedTokens).greaterThanOrEqual(0).withMessage('Cached tokens cannot be negative');\n this.ruleFor(c => c.costUsd).greaterThanOrEqual(0).withMessage('A cost cannot be negative');\n this.ruleFor(c => c.costUsd).lessThanOrEqual(100000).withMessage('A cost cannot exceed $100,000');\n this.ruleFor(c => c.cpuSeconds).greaterThanOrEqual(0).withMessage('A CPU time cannot be negative');\n this.ruleFor(c => c.cpuSeconds).lessThanOrEqual(1000000).withMessage('A CPU time cannot exceed 1,000,000 seconds');\n this.ruleFor(c => c.duration).greaterThanOrEqual(0).withMessage('A duration cannot be negative');\n this.ruleFor(c => c.inputTokens).greaterThanOrEqual(0).withMessage('Input tokens cannot be negative');\n this.ruleFor(c => c.memoryBytes).greaterThanOrEqual(0).withMessage('A memory size cannot be negative');\n this.ruleFor(c => c.memoryBytes).lessThanOrEqual(1099511627776).withMessage('A memory size cannot exceed 1 TiB');\n this.ruleFor(c => c.outputTokens).greaterThanOrEqual(0).withMessage('Output tokens cannot be negative');\n }\n}\n\n/**\n * Command for recording one agent session's usage - accepts the full harness callback payload shape (`status, detail, inputTokens, outputTokens, costUsd, durationMs, cpuSeconds, memoryBytes`, plus the resolution context a direct completion already has to hand) so both harness-run worker sessions and in-process completions record through the one command (plan Section 5.3c).\n */\nexport class RecordAgentSessionUsage extends Command<IRecordAgentSessionUsage, string> implements IRecordAgentSessionUsage {\n readonly route: string = '/api/a-i/usage';\n readonly validation: CommandValidator = new RecordAgentSessionUsageValidator();\n readonly treatWarningsAsErrors: boolean = false;\n readonly roles: string[] = [];\n readonly propertyDescriptors: PropertyDescriptor[] = [\n new PropertyDescriptor('agent', String, false),\n new PropertyDescriptor('cachedTokens', Number, true),\n new PropertyDescriptor('costUsd', Number, true),\n new PropertyDescriptor('cpuSeconds', Number, true),\n new PropertyDescriptor('duration', Number, true),\n new PropertyDescriptor('harness', Number, true),\n new PropertyDescriptor('inputTokens', Number, true),\n new PropertyDescriptor('memoryBytes', Number, true),\n new PropertyDescriptor('model', String, false),\n new PropertyDescriptor('outputTokens', Number, true),\n new PropertyDescriptor('provider', Guid, true),\n new PropertyDescriptor('purpose', String, false),\n new PropertyDescriptor('session', String, false),\n ];\n\n private _agent!: string;\n private _cachedTokens?: number;\n private _costUsd?: number;\n private _cpuSeconds?: number;\n private _duration?: number;\n private _harness?: Harness;\n private _inputTokens?: number;\n private _memoryBytes?: number;\n private _model!: string;\n private _outputTokens?: number;\n private _provider?: Guid;\n private _purpose!: string;\n private _session!: string;\n\n constructor() {\n super(String, false);\n }\n\n get requestParameters(): string[] {\n return [\n ];\n }\n\n /**\n * The {@link AgentId} that did the work.\n */\n get agent(): string {\n return this._agent;\n }\n\n set agent(value: string) {\n this._agent = value;\n this.propertyChanged('agent');\n }\n /**\n * Prompt tokens served from the provider's own cache.\n */\n get cachedTokens(): number | undefined {\n return this._cachedTokens;\n }\n\n set cachedTokens(value: number | undefined) {\n this._cachedTokens = value;\n this.propertyChanged('cachedTokens');\n }\n /**\n * The reported cost, in USD.\n */\n get costUsd(): number | undefined {\n return this._costUsd;\n }\n\n set costUsd(value: number | undefined) {\n this._costUsd = value;\n this.propertyChanged('costUsd');\n }\n /**\n * The CPU time a harness measured for the session.\n */\n get cpuSeconds(): number | undefined {\n return this._cpuSeconds;\n }\n\n set cpuSeconds(value: number | undefined) {\n this._cpuSeconds = value;\n this.propertyChanged('cpuSeconds');\n }\n /**\n * How long the session took.\n */\n get duration(): number | undefined {\n return this._duration;\n }\n\n set duration(value: number | undefined) {\n this._duration = value;\n this.propertyChanged('duration');\n }\n /**\n * The {@link Harness} the session ran under, when it was a harness-run job.\n */\n get harness(): Harness | undefined {\n return this._harness;\n }\n\n set harness(value: Harness | undefined) {\n this._harness = value;\n this.propertyChanged('harness');\n }\n /**\n * Tokens the prompt consumed.\n */\n get inputTokens(): number | undefined {\n return this._inputTokens;\n }\n\n set inputTokens(value: number | undefined) {\n this._inputTokens = value;\n this.propertyChanged('inputTokens');\n }\n /**\n * The peak memory a harness measured for the session.\n */\n get memoryBytes(): number | undefined {\n return this._memoryBytes;\n }\n\n set memoryBytes(value: number | undefined) {\n this._memoryBytes = value;\n this.propertyChanged('memoryBytes');\n }\n /**\n * The model that served it.\n */\n get model(): string {\n return this._model;\n }\n\n set model(value: string) {\n this._model = value;\n this.propertyChanged('model');\n }\n /**\n * Tokens the completion produced.\n */\n get outputTokens(): number | undefined {\n return this._outputTokens;\n }\n\n set outputTokens(value: number | undefined) {\n this._outputTokens = value;\n this.propertyChanged('outputTokens');\n }\n /**\n * The {@link AIProviderId} that served it, when resolved through a configured provider.\n */\n get provider(): Guid | undefined {\n return this._provider;\n }\n\n set provider(value: Guid | undefined) {\n this._provider = value;\n this.propertyChanged('provider');\n }\n /**\n * What the call was for.\n */\n get purpose(): string {\n return this._purpose;\n }\n\n set purpose(value: string) {\n this._purpose = value;\n this.propertyChanged('purpose');\n }\n /**\n * The {@link AgentSessionId} the usage belongs to.\n */\n get session(): string {\n return this._session;\n }\n\n set session(value: string) {\n this._session = value;\n this.propertyChanged('session');\n }\n\n static use(initialValues?: IRecordAgentSessionUsage): [RecordAgentSessionUsage, SetCommandValues<IRecordAgentSessionUsage>, ClearCommandValues] {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return useCommand<RecordAgentSessionUsage, IRecordAgentSessionUsage>(RecordAgentSessionUsage, initialValues);\n }\n}\n"],"names":["RecordAgentSessionUsageValidator","CommandValidator","ruleFor","c","cachedTokens","greaterThanOrEqual","withMessage","costUsd","lessThanOrEqual","cpuSeconds","duration","inputTokens","memoryBytes","outputTokens","RecordAgentSessionUsage","Command","route","validation","treatWarningsAsErrors","roles","propertyDescriptors","PropertyDescriptor","String","Number","Guid","_agent","_cachedTokens","_costUsd","_cpuSeconds","_duration","_harness","_inputTokens","_memoryBytes","_model","_outputTokens","_provider","_purpose","_session","requestParameters","agent","value","propertyChanged","harness","model","provider","purpose","session","use","initialValues","useCommand"],"mappings":"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"}
1
+ {"version":3,"file":"RecordAgentSessionUsage.js","sources":["../../../../generated/Usage/RecordAgentSessionUsage.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Usage.RecordAgentSessionUsage. Time: 2026-09-23T09:39:57.6536093Z. Hash: 00C528E8CDF98B4B0BF929FA9126FE735831CC039DF99C4D50382C693DFFA5F6\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n/* eslint-disable @typescript-eslint/no-empty-interface */\n// eslint-disable-next-line header/header\nimport { Command, CommandValidator } from '@cratis/arc/commands';\nimport { useCommand, SetCommandValues, ClearCommandValues } from '@cratis/arc.react/commands';\nimport { PropertyDescriptor } from '@cratis/arc/reflection';\nimport { Harness } from '../Harnesses/Harness';\nimport { Guid } from '@cratis/fundamentals';\n\n/**\n * Command for recording one agent session's usage - accepts the full harness callback payload shape (`status, detail, inputTokens, outputTokens, costUsd, durationMs, cpuSeconds, memoryBytes`, plus the resolution context a direct completion already has to hand) so both harness-run worker sessions and in-process completions record through the one command (plan Section 5.3c).\n */\nexport interface IRecordAgentSessionUsage {\n \n /**\n * The {@link AgentId} that did the work.\n */\n agent?: string;\n \n /**\n * Prompt tokens served from the provider's own cache.\n */\n cachedTokens?: number;\n \n /**\n * The reported cost, in USD.\n */\n costUsd?: number;\n \n /**\n * The CPU time a harness measured for the session.\n */\n cpuSeconds?: number;\n \n /**\n * How long the session took.\n */\n duration?: number;\n \n /**\n * The {@link Harness} the session ran under, when it was a harness-run job.\n */\n harness?: Harness;\n \n /**\n * Tokens the prompt consumed.\n */\n inputTokens?: number;\n \n /**\n * The peak memory a harness measured for the session.\n */\n memoryBytes?: number;\n \n /**\n * The model that served it.\n */\n model?: string;\n \n /**\n * Tokens the completion produced.\n */\n outputTokens?: number;\n \n /**\n * The {@link AIProviderId} that served it, when resolved through a configured provider.\n */\n provider?: Guid;\n \n /**\n * What the call was for.\n */\n purpose?: string;\n \n /**\n * The {@link AgentSessionId} the usage belongs to.\n */\n session?: string;\n}\n\nexport class RecordAgentSessionUsageValidator extends CommandValidator<IRecordAgentSessionUsage> {\n constructor() {\n super();\n this.ruleFor(c => c.cachedTokens).greaterThanOrEqual(0).withMessage('Cached tokens cannot be negative');\n this.ruleFor(c => c.costUsd).greaterThanOrEqual(0).withMessage('A cost cannot be negative');\n this.ruleFor(c => c.costUsd).lessThanOrEqual(100000).withMessage('A cost cannot exceed $100,000');\n this.ruleFor(c => c.cpuSeconds).greaterThanOrEqual(0).withMessage('A CPU time cannot be negative');\n this.ruleFor(c => c.cpuSeconds).lessThanOrEqual(1000000).withMessage('A CPU time cannot exceed 1,000,000 seconds');\n this.ruleFor(c => c.duration).greaterThanOrEqual(0).withMessage('A duration cannot be negative');\n this.ruleFor(c => c.inputTokens).greaterThanOrEqual(0).withMessage('Input tokens cannot be negative');\n this.ruleFor(c => c.memoryBytes).greaterThanOrEqual(0).withMessage('A memory size cannot be negative');\n this.ruleFor(c => c.memoryBytes).lessThanOrEqual(1099511627776).withMessage('A memory size cannot exceed 1 TiB');\n this.ruleFor(c => c.outputTokens).greaterThanOrEqual(0).withMessage('Output tokens cannot be negative');\n }\n}\n\n/**\n * Command for recording one agent session's usage - accepts the full harness callback payload shape (`status, detail, inputTokens, outputTokens, costUsd, durationMs, cpuSeconds, memoryBytes`, plus the resolution context a direct completion already has to hand) so both harness-run worker sessions and in-process completions record through the one command (plan Section 5.3c).\n */\nexport class RecordAgentSessionUsage extends Command<IRecordAgentSessionUsage, string> implements IRecordAgentSessionUsage {\n readonly route: string = '/api/a-i/usage';\n readonly validation: CommandValidator = new RecordAgentSessionUsageValidator();\n readonly treatWarningsAsErrors: boolean = false;\n readonly roles: string[] = [];\n readonly propertyDescriptors: PropertyDescriptor[] = [\n new PropertyDescriptor('agent', String, false),\n new PropertyDescriptor('cachedTokens', Number, true),\n new PropertyDescriptor('costUsd', Number, true),\n new PropertyDescriptor('cpuSeconds', Number, true),\n new PropertyDescriptor('duration', Number, true),\n new PropertyDescriptor('harness', Number, true),\n new PropertyDescriptor('inputTokens', Number, true),\n new PropertyDescriptor('memoryBytes', Number, true),\n new PropertyDescriptor('model', String, false),\n new PropertyDescriptor('outputTokens', Number, true),\n new PropertyDescriptor('provider', Guid, true),\n new PropertyDescriptor('purpose', String, false),\n new PropertyDescriptor('session', String, false),\n ];\n\n private _agent!: string;\n private _cachedTokens?: number;\n private _costUsd?: number;\n private _cpuSeconds?: number;\n private _duration?: number;\n private _harness?: Harness;\n private _inputTokens?: number;\n private _memoryBytes?: number;\n private _model!: string;\n private _outputTokens?: number;\n private _provider?: Guid;\n private _purpose!: string;\n private _session!: string;\n\n constructor() {\n super(String, false);\n }\n\n get requestParameters(): string[] {\n return [\n ];\n }\n\n /**\n * The {@link AgentId} that did the work.\n */\n get agent(): string {\n return this._agent;\n }\n\n set agent(value: string) {\n this._agent = value;\n this.propertyChanged('agent');\n }\n /**\n * Prompt tokens served from the provider's own cache.\n */\n get cachedTokens(): number | undefined {\n return this._cachedTokens;\n }\n\n set cachedTokens(value: number | undefined) {\n this._cachedTokens = value;\n this.propertyChanged('cachedTokens');\n }\n /**\n * The reported cost, in USD.\n */\n get costUsd(): number | undefined {\n return this._costUsd;\n }\n\n set costUsd(value: number | undefined) {\n this._costUsd = value;\n this.propertyChanged('costUsd');\n }\n /**\n * The CPU time a harness measured for the session.\n */\n get cpuSeconds(): number | undefined {\n return this._cpuSeconds;\n }\n\n set cpuSeconds(value: number | undefined) {\n this._cpuSeconds = value;\n this.propertyChanged('cpuSeconds');\n }\n /**\n * How long the session took.\n */\n get duration(): number | undefined {\n return this._duration;\n }\n\n set duration(value: number | undefined) {\n this._duration = value;\n this.propertyChanged('duration');\n }\n /**\n * The {@link Harness} the session ran under, when it was a harness-run job.\n */\n get harness(): Harness | undefined {\n return this._harness;\n }\n\n set harness(value: Harness | undefined) {\n this._harness = value;\n this.propertyChanged('harness');\n }\n /**\n * Tokens the prompt consumed.\n */\n get inputTokens(): number | undefined {\n return this._inputTokens;\n }\n\n set inputTokens(value: number | undefined) {\n this._inputTokens = value;\n this.propertyChanged('inputTokens');\n }\n /**\n * The peak memory a harness measured for the session.\n */\n get memoryBytes(): number | undefined {\n return this._memoryBytes;\n }\n\n set memoryBytes(value: number | undefined) {\n this._memoryBytes = value;\n this.propertyChanged('memoryBytes');\n }\n /**\n * The model that served it.\n */\n get model(): string {\n return this._model;\n }\n\n set model(value: string) {\n this._model = value;\n this.propertyChanged('model');\n }\n /**\n * Tokens the completion produced.\n */\n get outputTokens(): number | undefined {\n return this._outputTokens;\n }\n\n set outputTokens(value: number | undefined) {\n this._outputTokens = value;\n this.propertyChanged('outputTokens');\n }\n /**\n * The {@link AIProviderId} that served it, when resolved through a configured provider.\n */\n get provider(): Guid | undefined {\n return this._provider;\n }\n\n set provider(value: Guid | undefined) {\n this._provider = value;\n this.propertyChanged('provider');\n }\n /**\n * What the call was for.\n */\n get purpose(): string {\n return this._purpose;\n }\n\n set purpose(value: string) {\n this._purpose = value;\n this.propertyChanged('purpose');\n }\n /**\n * The {@link AgentSessionId} the usage belongs to.\n */\n get session(): string {\n return this._session;\n }\n\n set session(value: string) {\n this._session = value;\n this.propertyChanged('session');\n }\n\n static use(initialValues?: IRecordAgentSessionUsage): [RecordAgentSessionUsage, SetCommandValues<IRecordAgentSessionUsage>, ClearCommandValues] {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return useCommand<RecordAgentSessionUsage, IRecordAgentSessionUsage>(RecordAgentSessionUsage, initialValues);\n }\n}\n"],"names":["RecordAgentSessionUsageValidator","CommandValidator","ruleFor","c","cachedTokens","greaterThanOrEqual","withMessage","costUsd","lessThanOrEqual","cpuSeconds","duration","inputTokens","memoryBytes","outputTokens","RecordAgentSessionUsage","Command","route","validation","treatWarningsAsErrors","roles","propertyDescriptors","PropertyDescriptor","String","Number","Guid","_agent","_cachedTokens","_costUsd","_cpuSeconds","_duration","_harness","_inputTokens","_memoryBytes","_model","_outputTokens","_provider","_purpose","_session","requestParameters","agent","value","propertyChanged","harness","model","provider","purpose","session","use","initialValues","useCommand"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"AgentUsageByMonth.js","sources":["../../../../../generated/Usage/Trends/AgentUsageByMonth.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Usage.Trends.AgentUsageByMonth. Time: 2026-09-22T21:58:26.6246419Z. Hash: F1E47FE49C7E983E1C2F547DF3D5CA7AB31B7F519987ED999B9524607288C1B1\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n// eslint-disable-next-line header/header\nimport { field } from '@cratis/fundamentals';\n\n/**\n * Total CPU and memory usage every agent session recorded, accumulated per calendar month - the monthly counterpart to {@link AgentUsageByWeek}. Generalized from Direct's `Dashboard.Trends.AgentUsageByMonth` (plan Section 5.3d).\n */\nexport class AgentUsageByMonth {\n\n /**\n * The calendar month the usage was accumulated for.\n */\n @field(String)\n month!: string;\n\n /**\n * The total CPU time accumulated across every session that month.\n */\n @field(Number)\n cpuSeconds!: number;\n\n /**\n * The total peak memory accumulated across every session that month.\n */\n @field(Number)\n memoryBytes!: number;\n}\n"],"names":["AgentUsageByMonth","month","cpuSeconds","memoryBytes"],"mappings":";;;;;;;;;;;;;;;;;;;;AASA;;AAEC,IACM,MAAMA,iBAAAA,CAAAA;AAET;;AAEC,QACD,KACAC;AAEA;;AAEC,QACD,UACAC;AAEA;;AAEC,QACD,WACAC;AACJ;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"AgentUsageByMonth.js","sources":["../../../../../generated/Usage/Trends/AgentUsageByMonth.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Usage.Trends.AgentUsageByMonth. Time: 2026-09-23T09:39:57.8049607Z. Hash: F1E47FE49C7E983E1C2F547DF3D5CA7AB31B7F519987ED999B9524607288C1B1\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n// eslint-disable-next-line header/header\nimport { field } from '@cratis/fundamentals';\n\n/**\n * Total CPU and memory usage every agent session recorded, accumulated per calendar month - the monthly counterpart to {@link AgentUsageByWeek}. Generalized from Direct's `Dashboard.Trends.AgentUsageByMonth` (plan Section 5.3d).\n */\nexport class AgentUsageByMonth {\n\n /**\n * The calendar month the usage was accumulated for.\n */\n @field(String)\n month!: string;\n\n /**\n * The total CPU time accumulated across every session that month.\n */\n @field(Number)\n cpuSeconds!: number;\n\n /**\n * The total peak memory accumulated across every session that month.\n */\n @field(Number)\n memoryBytes!: number;\n}\n"],"names":["AgentUsageByMonth","month","cpuSeconds","memoryBytes"],"mappings":";;;;;;;;;;;;;;;;;;;;AASA;;AAEC,IACM,MAAMA,iBAAAA,CAAAA;AAET;;AAEC,QACD,KACAC;AAEA;;AAEC,QACD,UACAC;AAEA;;AAEC,QACD,WACAC;AACJ;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"AgentUsageByWeek.js","sources":["../../../../../generated/Usage/Trends/AgentUsageByWeek.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Usage.Trends.AgentUsageByWeek. Time: 2026-09-22T21:58:26.6246419Z. Hash: CCAC4A183EBA3D92F60A52BC83FC643F92BBBA0C404B18B45F82C2C089538FCE\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n// eslint-disable-next-line header/header\nimport { field } from '@cratis/fundamentals';\n\n/**\n * Total CPU and memory usage every agent session recorded, accumulated per calendar week - a dashboard's \"resource usage over time\" chart. A real accumulating projection: every {@link AgentSessionUsageRecorded} event, regardless of which session's stream it was appended to, is keyed by its own {@link WeekKey} rather than by event source, so one document per week accumulates the total across every session. Generalized from Direct's `Dashboard.Trends.AgentUsageByWeek` (plan Section 5.3d).\n */\nexport class AgentUsageByWeek {\n\n /**\n * The calendar week the usage was accumulated for.\n */\n @field(String)\n week!: string;\n\n /**\n * The total CPU time accumulated across every session that week.\n */\n @field(Number)\n cpuSeconds!: number;\n\n /**\n * The total peak memory accumulated across every session that week.\n */\n @field(Number)\n memoryBytes!: number;\n}\n"],"names":["AgentUsageByWeek","week","cpuSeconds","memoryBytes"],"mappings":";;;;;;;;;;;;;;;;;;;;AASA;;AAEC,IACM,MAAMA,gBAAAA,CAAAA;AAET;;AAEC,QACD,IACAC;AAEA;;AAEC,QACD,UACAC;AAEA;;AAEC,QACD,WACAC;AACJ;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"AgentUsageByWeek.js","sources":["../../../../../generated/Usage/Trends/AgentUsageByWeek.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Usage.Trends.AgentUsageByWeek. Time: 2026-09-23T09:39:57.8049607Z. Hash: CCAC4A183EBA3D92F60A52BC83FC643F92BBBA0C404B18B45F82C2C089538FCE\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n// eslint-disable-next-line header/header\nimport { field } from '@cratis/fundamentals';\n\n/**\n * Total CPU and memory usage every agent session recorded, accumulated per calendar week - a dashboard's \"resource usage over time\" chart. A real accumulating projection: every {@link AgentSessionUsageRecorded} event, regardless of which session's stream it was appended to, is keyed by its own {@link WeekKey} rather than by event source, so one document per week accumulates the total across every session. Generalized from Direct's `Dashboard.Trends.AgentUsageByWeek` (plan Section 5.3d).\n */\nexport class AgentUsageByWeek {\n\n /**\n * The calendar week the usage was accumulated for.\n */\n @field(String)\n week!: string;\n\n /**\n * The total CPU time accumulated across every session that week.\n */\n @field(Number)\n cpuSeconds!: number;\n\n /**\n * The total peak memory accumulated across every session that week.\n */\n @field(Number)\n memoryBytes!: number;\n}\n"],"names":["AgentUsageByWeek","week","cpuSeconds","memoryBytes"],"mappings":";;;;;;;;;;;;;;;;;;;;AASA;;AAEC,IACM,MAAMA,gBAAAA,CAAAA;AAET;;AAEC,QACD,IACAC;AAEA;;AAEC,QACD,UACAC;AAEA;;AAEC,QACD,WACAC;AACJ;;;;;;;;;;;;;;;;"}
@@ -2,7 +2,7 @@ import { QueryFor, Paging } from '@cratis/arc/queries';
2
2
  import { useQuery, useQueryWithPaging, useSuspenseQuery, useSuspenseQueryWithPaging, QueryWhen } from '@cratis/arc.react/queries';
3
3
  import { AgentUsageByMonth } from './AgentUsageByMonth.js';
4
4
 
5
- // @generated by Cratis. Source: Cratis.AI.Usage.Trends.AgentUsageByMonth. Time: 2026-09-22T21:58:26.5464526Z. Hash: F240078B088824F58319DFCDDF639EBF531ACB4DE21ECC44495A8C80EA8F89A8
5
+ // @generated by Cratis. Source: Cratis.AI.Usage.Trends.AgentUsageByMonth. Time: 2026-09-23T09:39:57.7485782Z. Hash: F240078B088824F58319DFCDDF639EBF531ACB4DE21ECC44495A8C80EA8F89A8
6
6
  /*---------------------------------------------------------------------------------------------
7
7
  * **DO NOT EDIT** - This file is an automatically generated file.
8
8
  *--------------------------------------------------------------------------------------------*/ /* eslint-disable sort-imports */ // eslint-disable-next-line header/header
@@ -1 +1 @@
1
- {"version":3,"file":"RecentMonths.js","sources":["../../../../../generated/Usage/Trends/RecentMonths.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Usage.Trends.AgentUsageByMonth. Time: 2026-09-22T21:58:26.5464526Z. Hash: F240078B088824F58319DFCDDF639EBF531ACB4DE21ECC44495A8C80EA8F89A8\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n// eslint-disable-next-line header/header\nimport { QueryFor, QueryResultWithState, Sorting, Paging } from '@cratis/arc/queries';\nimport { useQuery, useQueryWithPaging, useSuspenseQuery, useSuspenseQueryWithPaging, PerformQuery, SetSorting, SetPage, SetPageSize, QueryWhen } from '@cratis/arc.react/queries';\nimport { ParameterDescriptor } from '@cratis/arc/reflection';\nimport { AgentUsageByMonth } from './AgentUsageByMonth';\n\nclass RecentMonthsSortBy {\n\n constructor(readonly query: RecentMonths) {\n }\n\n}\n\nclass RecentMonthsSortByWithoutQuery {\n\n}\n\n\n/**\n * Gets the most recent months that recorded any agent session usage, oldest first.\n */\nexport class RecentMonths extends QueryFor<AgentUsageByMonth[]> {\n readonly route: string = '/api/a-i/usage/trends/recent-months';\n readonly queryName: string = 'Cratis.AI.Usage.Trends.AgentUsageByMonth.RecentMonths';\n readonly treatWarningsAsErrors: boolean = false;\n readonly roles: string[] = [];\n readonly defaultValue: AgentUsageByMonth[] = [];\n private readonly _sortBy: RecentMonthsSortBy;\n private static readonly _sortBy: RecentMonthsSortByWithoutQuery = new RecentMonthsSortByWithoutQuery();\n\n constructor() {\n super(AgentUsageByMonth, true);\n this._sortBy = new RecentMonthsSortBy(this);\n }\n\n get requiredRequestParameters(): string[] {\n return [\n ];\n }\n\n readonly parameterDescriptors: ParameterDescriptor[] = [\n ];\n\n\n get sortBy(): RecentMonthsSortBy {\n return this._sortBy;\n }\n\n static get sortBy(): RecentMonthsSortByWithoutQuery {\n return this._sortBy;\n }\n\n static use(sorting?: Sorting): [QueryResultWithState<AgentUsageByMonth[]>, PerformQuery, SetSorting] {\n return useQuery<AgentUsageByMonth[], RecentMonths>(RecentMonths, undefined, sorting);\n }\n\n static useWithPaging(pageSize: number, sorting?: Sorting): [QueryResultWithState<AgentUsageByMonth[]>, PerformQuery, SetSorting, SetPage, SetPageSize] {\n return useQueryWithPaging<AgentUsageByMonth[], RecentMonths>(RecentMonths, new Paging(0, pageSize), undefined, sorting);\n }\n\n static useSuspense(sorting?: Sorting): [QueryResultWithState<AgentUsageByMonth[]>, PerformQuery, SetSorting] {\n return useSuspenseQuery<AgentUsageByMonth[], RecentMonths>(RecentMonths, undefined, sorting);\n }\n\n static useSuspenseWithPaging(pageSize: number, sorting?: Sorting): [QueryResultWithState<AgentUsageByMonth[]>, PerformQuery, SetSorting, SetPage, SetPageSize] {\n return useSuspenseQueryWithPaging<AgentUsageByMonth[], RecentMonths>(RecentMonths, new Paging(0, pageSize), undefined, sorting);\n }\n\n static when(condition: boolean): QueryWhen<RecentMonths, AgentUsageByMonth[]> {\n return new QueryWhen<RecentMonths, AgentUsageByMonth[]>(RecentMonths, condition);\n }\n}\n"],"names":["RecentMonthsSortBy","query","RecentMonthsSortByWithoutQuery","RecentMonths","QueryFor","route","queryName","treatWarningsAsErrors","roles","defaultValue","_sortBy","AgentUsageByMonth","requiredRequestParameters","parameterDescriptors","sortBy","use","sorting","useQuery","undefined","useWithPaging","pageSize","useQueryWithPaging","Paging","useSuspense","useSuspenseQuery","useSuspenseWithPaging","useSuspenseQueryWithPaging","when","condition","QueryWhen"],"mappings":";;;;AAAA;AACA;;;AAWA,MAAMA,kBAAAA,CAAAA;;IAEF,WAAA,CAAqBC,KAAmB,CAAE;aAArBA,KAAAA,GAAAA,KAAAA;AACrB,IAAA;AAEJ;AAEA,MAAMC,8BAAAA,CAAAA;AAEN;AAGA;;IAGO,MAAMC,YAAAA,SAAqBC,QAAAA,CAAAA;AACrBC,IAAAA,KAAAA,GAAgB,qCAAA;AAChBC,IAAAA,SAAAA,GAAoB,uDAAA;AACpBC,IAAAA,qBAAAA,GAAiC,KAAA;AACjCC,IAAAA,KAAAA,GAAkB,EAAE;AACpBC,IAAAA,YAAAA,GAAoC,EAAE;IAC9BC,OAAAA;IACjB,OAAwBA,OAAAA,GAA0C,IAAIR,8BAAAA,EAAAA;IAEtE,WAAA,EAAc;AACV,QAAA,KAAK,CAACS,iBAAAA,EAAmB,IAAA,CAAA;AACzB,QAAA,IAAI,CAACD,OAAO,GAAG,IAAIV,mBAAmB,IAAI,CAAA;AAC9C,IAAA;AAEA,IAAA,IAAIY,yBAAAA,GAAsC;AACtC,QAAA,OAAO,EACN;AACL,IAAA;AAESC,IAAAA,oBAAAA,GAA8C,EACtD;AAGD,IAAA,IAAIC,MAAAA,GAA6B;QAC7B,OAAO,IAAI,CAACJ,OAAO;AACvB,IAAA;AAEA,IAAA,WAAWI,MAAAA,GAAyC;QAChD,OAAO,IAAI,CAACJ,OAAO;AACvB,IAAA;IAEA,OAAOK,GAAAA,CAAIC,OAAiB,EAAyE;QACjG,OAAOC,QAAAA,CAA4Cd,cAAce,SAAAA,EAAWF,OAAAA,CAAAA;AAChF,IAAA;AAEA,IAAA,OAAOG,aAAAA,CAAcC,QAAgB,EAAEJ,OAAiB,EAA+F;AACnJ,QAAA,OAAOK,mBAAsDlB,YAAAA,EAAc,IAAImB,MAAAA,CAAO,CAAA,EAAGF,WAAWF,SAAAA,EAAWF,OAAAA,CAAAA;AACnH,IAAA;IAEA,OAAOO,WAAAA,CAAYP,OAAiB,EAAyE;QACzG,OAAOQ,gBAAAA,CAAoDrB,cAAce,SAAAA,EAAWF,OAAAA,CAAAA;AACxF,IAAA;AAEA,IAAA,OAAOS,qBAAAA,CAAsBL,QAAgB,EAAEJ,OAAiB,EAA+F;AAC3J,QAAA,OAAOU,2BAA8DvB,YAAAA,EAAc,IAAImB,MAAAA,CAAO,CAAA,EAAGF,WAAWF,SAAAA,EAAWF,OAAAA,CAAAA;AAC3H,IAAA;IAEA,OAAOW,IAAAA,CAAKC,SAAkB,EAAgD;QAC1E,OAAO,IAAIC,UAA6C1B,YAAAA,EAAcyB,SAAAA,CAAAA;AAC1E,IAAA;AACJ;;;;"}
1
+ {"version":3,"file":"RecentMonths.js","sources":["../../../../../generated/Usage/Trends/RecentMonths.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Usage.Trends.AgentUsageByMonth. Time: 2026-09-23T09:39:57.7485782Z. Hash: F240078B088824F58319DFCDDF639EBF531ACB4DE21ECC44495A8C80EA8F89A8\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n// eslint-disable-next-line header/header\nimport { QueryFor, QueryResultWithState, Sorting, Paging } from '@cratis/arc/queries';\nimport { useQuery, useQueryWithPaging, useSuspenseQuery, useSuspenseQueryWithPaging, PerformQuery, SetSorting, SetPage, SetPageSize, QueryWhen } from '@cratis/arc.react/queries';\nimport { ParameterDescriptor } from '@cratis/arc/reflection';\nimport { AgentUsageByMonth } from './AgentUsageByMonth';\n\nclass RecentMonthsSortBy {\n\n constructor(readonly query: RecentMonths) {\n }\n\n}\n\nclass RecentMonthsSortByWithoutQuery {\n\n}\n\n\n/**\n * Gets the most recent months that recorded any agent session usage, oldest first.\n */\nexport class RecentMonths extends QueryFor<AgentUsageByMonth[]> {\n readonly route: string = '/api/a-i/usage/trends/recent-months';\n readonly queryName: string = 'Cratis.AI.Usage.Trends.AgentUsageByMonth.RecentMonths';\n readonly treatWarningsAsErrors: boolean = false;\n readonly roles: string[] = [];\n readonly defaultValue: AgentUsageByMonth[] = [];\n private readonly _sortBy: RecentMonthsSortBy;\n private static readonly _sortBy: RecentMonthsSortByWithoutQuery = new RecentMonthsSortByWithoutQuery();\n\n constructor() {\n super(AgentUsageByMonth, true);\n this._sortBy = new RecentMonthsSortBy(this);\n }\n\n get requiredRequestParameters(): string[] {\n return [\n ];\n }\n\n readonly parameterDescriptors: ParameterDescriptor[] = [\n ];\n\n\n get sortBy(): RecentMonthsSortBy {\n return this._sortBy;\n }\n\n static get sortBy(): RecentMonthsSortByWithoutQuery {\n return this._sortBy;\n }\n\n static use(sorting?: Sorting): [QueryResultWithState<AgentUsageByMonth[]>, PerformQuery, SetSorting] {\n return useQuery<AgentUsageByMonth[], RecentMonths>(RecentMonths, undefined, sorting);\n }\n\n static useWithPaging(pageSize: number, sorting?: Sorting): [QueryResultWithState<AgentUsageByMonth[]>, PerformQuery, SetSorting, SetPage, SetPageSize] {\n return useQueryWithPaging<AgentUsageByMonth[], RecentMonths>(RecentMonths, new Paging(0, pageSize), undefined, sorting);\n }\n\n static useSuspense(sorting?: Sorting): [QueryResultWithState<AgentUsageByMonth[]>, PerformQuery, SetSorting] {\n return useSuspenseQuery<AgentUsageByMonth[], RecentMonths>(RecentMonths, undefined, sorting);\n }\n\n static useSuspenseWithPaging(pageSize: number, sorting?: Sorting): [QueryResultWithState<AgentUsageByMonth[]>, PerformQuery, SetSorting, SetPage, SetPageSize] {\n return useSuspenseQueryWithPaging<AgentUsageByMonth[], RecentMonths>(RecentMonths, new Paging(0, pageSize), undefined, sorting);\n }\n\n static when(condition: boolean): QueryWhen<RecentMonths, AgentUsageByMonth[]> {\n return new QueryWhen<RecentMonths, AgentUsageByMonth[]>(RecentMonths, condition);\n }\n}\n"],"names":["RecentMonthsSortBy","query","RecentMonthsSortByWithoutQuery","RecentMonths","QueryFor","route","queryName","treatWarningsAsErrors","roles","defaultValue","_sortBy","AgentUsageByMonth","requiredRequestParameters","parameterDescriptors","sortBy","use","sorting","useQuery","undefined","useWithPaging","pageSize","useQueryWithPaging","Paging","useSuspense","useSuspenseQuery","useSuspenseWithPaging","useSuspenseQueryWithPaging","when","condition","QueryWhen"],"mappings":";;;;AAAA;AACA;;;AAWA,MAAMA,kBAAAA,CAAAA;;IAEF,WAAA,CAAqBC,KAAmB,CAAE;aAArBA,KAAAA,GAAAA,KAAAA;AACrB,IAAA;AAEJ;AAEA,MAAMC,8BAAAA,CAAAA;AAEN;AAGA;;IAGO,MAAMC,YAAAA,SAAqBC,QAAAA,CAAAA;AACrBC,IAAAA,KAAAA,GAAgB,qCAAA;AAChBC,IAAAA,SAAAA,GAAoB,uDAAA;AACpBC,IAAAA,qBAAAA,GAAiC,KAAA;AACjCC,IAAAA,KAAAA,GAAkB,EAAE;AACpBC,IAAAA,YAAAA,GAAoC,EAAE;IAC9BC,OAAAA;IACjB,OAAwBA,OAAAA,GAA0C,IAAIR,8BAAAA,EAAAA;IAEtE,WAAA,EAAc;AACV,QAAA,KAAK,CAACS,iBAAAA,EAAmB,IAAA,CAAA;AACzB,QAAA,IAAI,CAACD,OAAO,GAAG,IAAIV,mBAAmB,IAAI,CAAA;AAC9C,IAAA;AAEA,IAAA,IAAIY,yBAAAA,GAAsC;AACtC,QAAA,OAAO,EACN;AACL,IAAA;AAESC,IAAAA,oBAAAA,GAA8C,EACtD;AAGD,IAAA,IAAIC,MAAAA,GAA6B;QAC7B,OAAO,IAAI,CAACJ,OAAO;AACvB,IAAA;AAEA,IAAA,WAAWI,MAAAA,GAAyC;QAChD,OAAO,IAAI,CAACJ,OAAO;AACvB,IAAA;IAEA,OAAOK,GAAAA,CAAIC,OAAiB,EAAyE;QACjG,OAAOC,QAAAA,CAA4Cd,cAAce,SAAAA,EAAWF,OAAAA,CAAAA;AAChF,IAAA;AAEA,IAAA,OAAOG,aAAAA,CAAcC,QAAgB,EAAEJ,OAAiB,EAA+F;AACnJ,QAAA,OAAOK,mBAAsDlB,YAAAA,EAAc,IAAImB,MAAAA,CAAO,CAAA,EAAGF,WAAWF,SAAAA,EAAWF,OAAAA,CAAAA;AACnH,IAAA;IAEA,OAAOO,WAAAA,CAAYP,OAAiB,EAAyE;QACzG,OAAOQ,gBAAAA,CAAoDrB,cAAce,SAAAA,EAAWF,OAAAA,CAAAA;AACxF,IAAA;AAEA,IAAA,OAAOS,qBAAAA,CAAsBL,QAAgB,EAAEJ,OAAiB,EAA+F;AAC3J,QAAA,OAAOU,2BAA8DvB,YAAAA,EAAc,IAAImB,MAAAA,CAAO,CAAA,EAAGF,WAAWF,SAAAA,EAAWF,OAAAA,CAAAA;AAC3H,IAAA;IAEA,OAAOW,IAAAA,CAAKC,SAAkB,EAAgD;QAC1E,OAAO,IAAIC,UAA6C1B,YAAAA,EAAcyB,SAAAA,CAAAA;AAC1E,IAAA;AACJ;;;;"}
@@ -2,7 +2,7 @@ import { QueryFor, Paging } from '@cratis/arc/queries';
2
2
  import { useQuery, useQueryWithPaging, useSuspenseQuery, useSuspenseQueryWithPaging, QueryWhen } from '@cratis/arc.react/queries';
3
3
  import { AgentUsageByWeek } from './AgentUsageByWeek.js';
4
4
 
5
- // @generated by Cratis. Source: Cratis.AI.Usage.Trends.AgentUsageByWeek. Time: 2026-09-22T21:58:26.5464526Z. Hash: D66AFEC531F3FED5A5909A0C97F3BEF11E54213E02D6B55E664A8C0671371133
5
+ // @generated by Cratis. Source: Cratis.AI.Usage.Trends.AgentUsageByWeek. Time: 2026-09-23T09:39:57.7485782Z. Hash: D66AFEC531F3FED5A5909A0C97F3BEF11E54213E02D6B55E664A8C0671371133
6
6
  /*---------------------------------------------------------------------------------------------
7
7
  * **DO NOT EDIT** - This file is an automatically generated file.
8
8
  *--------------------------------------------------------------------------------------------*/ /* eslint-disable sort-imports */ // eslint-disable-next-line header/header
@@ -1 +1 @@
1
- {"version":3,"file":"RecentWeeks.js","sources":["../../../../../generated/Usage/Trends/RecentWeeks.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Usage.Trends.AgentUsageByWeek. Time: 2026-09-22T21:58:26.5464526Z. Hash: D66AFEC531F3FED5A5909A0C97F3BEF11E54213E02D6B55E664A8C0671371133\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n// eslint-disable-next-line header/header\nimport { QueryFor, QueryResultWithState, Sorting, Paging } from '@cratis/arc/queries';\nimport { useQuery, useQueryWithPaging, useSuspenseQuery, useSuspenseQueryWithPaging, PerformQuery, SetSorting, SetPage, SetPageSize, QueryWhen } from '@cratis/arc.react/queries';\nimport { ParameterDescriptor } from '@cratis/arc/reflection';\nimport { AgentUsageByWeek } from './AgentUsageByWeek';\n\nclass RecentWeeksSortBy {\n\n constructor(readonly query: RecentWeeks) {\n }\n\n}\n\nclass RecentWeeksSortByWithoutQuery {\n\n}\n\n\n/**\n * Gets the most recent weeks that recorded any agent session usage, oldest first.\n */\nexport class RecentWeeks extends QueryFor<AgentUsageByWeek[]> {\n readonly route: string = '/api/a-i/usage/trends/recent-weeks';\n readonly queryName: string = 'Cratis.AI.Usage.Trends.AgentUsageByWeek.RecentWeeks';\n readonly treatWarningsAsErrors: boolean = false;\n readonly roles: string[] = [];\n readonly defaultValue: AgentUsageByWeek[] = [];\n private readonly _sortBy: RecentWeeksSortBy;\n private static readonly _sortBy: RecentWeeksSortByWithoutQuery = new RecentWeeksSortByWithoutQuery();\n\n constructor() {\n super(AgentUsageByWeek, true);\n this._sortBy = new RecentWeeksSortBy(this);\n }\n\n get requiredRequestParameters(): string[] {\n return [\n ];\n }\n\n readonly parameterDescriptors: ParameterDescriptor[] = [\n ];\n\n\n get sortBy(): RecentWeeksSortBy {\n return this._sortBy;\n }\n\n static get sortBy(): RecentWeeksSortByWithoutQuery {\n return this._sortBy;\n }\n\n static use(sorting?: Sorting): [QueryResultWithState<AgentUsageByWeek[]>, PerformQuery, SetSorting] {\n return useQuery<AgentUsageByWeek[], RecentWeeks>(RecentWeeks, undefined, sorting);\n }\n\n static useWithPaging(pageSize: number, sorting?: Sorting): [QueryResultWithState<AgentUsageByWeek[]>, PerformQuery, SetSorting, SetPage, SetPageSize] {\n return useQueryWithPaging<AgentUsageByWeek[], RecentWeeks>(RecentWeeks, new Paging(0, pageSize), undefined, sorting);\n }\n\n static useSuspense(sorting?: Sorting): [QueryResultWithState<AgentUsageByWeek[]>, PerformQuery, SetSorting] {\n return useSuspenseQuery<AgentUsageByWeek[], RecentWeeks>(RecentWeeks, undefined, sorting);\n }\n\n static useSuspenseWithPaging(pageSize: number, sorting?: Sorting): [QueryResultWithState<AgentUsageByWeek[]>, PerformQuery, SetSorting, SetPage, SetPageSize] {\n return useSuspenseQueryWithPaging<AgentUsageByWeek[], RecentWeeks>(RecentWeeks, new Paging(0, pageSize), undefined, sorting);\n }\n\n static when(condition: boolean): QueryWhen<RecentWeeks, AgentUsageByWeek[]> {\n return new QueryWhen<RecentWeeks, AgentUsageByWeek[]>(RecentWeeks, condition);\n }\n}\n"],"names":["RecentWeeksSortBy","query","RecentWeeksSortByWithoutQuery","RecentWeeks","QueryFor","route","queryName","treatWarningsAsErrors","roles","defaultValue","_sortBy","AgentUsageByWeek","requiredRequestParameters","parameterDescriptors","sortBy","use","sorting","useQuery","undefined","useWithPaging","pageSize","useQueryWithPaging","Paging","useSuspense","useSuspenseQuery","useSuspenseWithPaging","useSuspenseQueryWithPaging","when","condition","QueryWhen"],"mappings":";;;;AAAA;AACA;;;AAWA,MAAMA,iBAAAA,CAAAA;;IAEF,WAAA,CAAqBC,KAAkB,CAAE;aAApBA,KAAAA,GAAAA,KAAAA;AACrB,IAAA;AAEJ;AAEA,MAAMC,6BAAAA,CAAAA;AAEN;AAGA;;IAGO,MAAMC,WAAAA,SAAoBC,QAAAA,CAAAA;AACpBC,IAAAA,KAAAA,GAAgB,oCAAA;AAChBC,IAAAA,SAAAA,GAAoB,qDAAA;AACpBC,IAAAA,qBAAAA,GAAiC,KAAA;AACjCC,IAAAA,KAAAA,GAAkB,EAAE;AACpBC,IAAAA,YAAAA,GAAmC,EAAE;IAC7BC,OAAAA;IACjB,OAAwBA,OAAAA,GAAyC,IAAIR,6BAAAA,EAAAA;IAErE,WAAA,EAAc;AACV,QAAA,KAAK,CAACS,gBAAAA,EAAkB,IAAA,CAAA;AACxB,QAAA,IAAI,CAACD,OAAO,GAAG,IAAIV,kBAAkB,IAAI,CAAA;AAC7C,IAAA;AAEA,IAAA,IAAIY,yBAAAA,GAAsC;AACtC,QAAA,OAAO,EACN;AACL,IAAA;AAESC,IAAAA,oBAAAA,GAA8C,EACtD;AAGD,IAAA,IAAIC,MAAAA,GAA4B;QAC5B,OAAO,IAAI,CAACJ,OAAO;AACvB,IAAA;AAEA,IAAA,WAAWI,MAAAA,GAAwC;QAC/C,OAAO,IAAI,CAACJ,OAAO;AACvB,IAAA;IAEA,OAAOK,GAAAA,CAAIC,OAAiB,EAAwE;QAChG,OAAOC,QAAAA,CAA0Cd,aAAae,SAAAA,EAAWF,OAAAA,CAAAA;AAC7E,IAAA;AAEA,IAAA,OAAOG,aAAAA,CAAcC,QAAgB,EAAEJ,OAAiB,EAA8F;AAClJ,QAAA,OAAOK,mBAAoDlB,WAAAA,EAAa,IAAImB,MAAAA,CAAO,CAAA,EAAGF,WAAWF,SAAAA,EAAWF,OAAAA,CAAAA;AAChH,IAAA;IAEA,OAAOO,WAAAA,CAAYP,OAAiB,EAAwE;QACxG,OAAOQ,gBAAAA,CAAkDrB,aAAae,SAAAA,EAAWF,OAAAA,CAAAA;AACrF,IAAA;AAEA,IAAA,OAAOS,qBAAAA,CAAsBL,QAAgB,EAAEJ,OAAiB,EAA8F;AAC1J,QAAA,OAAOU,2BAA4DvB,WAAAA,EAAa,IAAImB,MAAAA,CAAO,CAAA,EAAGF,WAAWF,SAAAA,EAAWF,OAAAA,CAAAA;AACxH,IAAA;IAEA,OAAOW,IAAAA,CAAKC,SAAkB,EAA8C;QACxE,OAAO,IAAIC,UAA2C1B,WAAAA,EAAayB,SAAAA,CAAAA;AACvE,IAAA;AACJ;;;;"}
1
+ {"version":3,"file":"RecentWeeks.js","sources":["../../../../../generated/Usage/Trends/RecentWeeks.ts"],"sourcesContent":["// @generated by Cratis. Source: Cratis.AI.Usage.Trends.AgentUsageByWeek. Time: 2026-09-23T09:39:57.7485782Z. Hash: D66AFEC531F3FED5A5909A0C97F3BEF11E54213E02D6B55E664A8C0671371133\n/*---------------------------------------------------------------------------------------------\n * **DO NOT EDIT** - This file is an automatically generated file.\n *--------------------------------------------------------------------------------------------*/\n\n/* eslint-disable sort-imports */\n// eslint-disable-next-line header/header\nimport { QueryFor, QueryResultWithState, Sorting, Paging } from '@cratis/arc/queries';\nimport { useQuery, useQueryWithPaging, useSuspenseQuery, useSuspenseQueryWithPaging, PerformQuery, SetSorting, SetPage, SetPageSize, QueryWhen } from '@cratis/arc.react/queries';\nimport { ParameterDescriptor } from '@cratis/arc/reflection';\nimport { AgentUsageByWeek } from './AgentUsageByWeek';\n\nclass RecentWeeksSortBy {\n\n constructor(readonly query: RecentWeeks) {\n }\n\n}\n\nclass RecentWeeksSortByWithoutQuery {\n\n}\n\n\n/**\n * Gets the most recent weeks that recorded any agent session usage, oldest first.\n */\nexport class RecentWeeks extends QueryFor<AgentUsageByWeek[]> {\n readonly route: string = '/api/a-i/usage/trends/recent-weeks';\n readonly queryName: string = 'Cratis.AI.Usage.Trends.AgentUsageByWeek.RecentWeeks';\n readonly treatWarningsAsErrors: boolean = false;\n readonly roles: string[] = [];\n readonly defaultValue: AgentUsageByWeek[] = [];\n private readonly _sortBy: RecentWeeksSortBy;\n private static readonly _sortBy: RecentWeeksSortByWithoutQuery = new RecentWeeksSortByWithoutQuery();\n\n constructor() {\n super(AgentUsageByWeek, true);\n this._sortBy = new RecentWeeksSortBy(this);\n }\n\n get requiredRequestParameters(): string[] {\n return [\n ];\n }\n\n readonly parameterDescriptors: ParameterDescriptor[] = [\n ];\n\n\n get sortBy(): RecentWeeksSortBy {\n return this._sortBy;\n }\n\n static get sortBy(): RecentWeeksSortByWithoutQuery {\n return this._sortBy;\n }\n\n static use(sorting?: Sorting): [QueryResultWithState<AgentUsageByWeek[]>, PerformQuery, SetSorting] {\n return useQuery<AgentUsageByWeek[], RecentWeeks>(RecentWeeks, undefined, sorting);\n }\n\n static useWithPaging(pageSize: number, sorting?: Sorting): [QueryResultWithState<AgentUsageByWeek[]>, PerformQuery, SetSorting, SetPage, SetPageSize] {\n return useQueryWithPaging<AgentUsageByWeek[], RecentWeeks>(RecentWeeks, new Paging(0, pageSize), undefined, sorting);\n }\n\n static useSuspense(sorting?: Sorting): [QueryResultWithState<AgentUsageByWeek[]>, PerformQuery, SetSorting] {\n return useSuspenseQuery<AgentUsageByWeek[], RecentWeeks>(RecentWeeks, undefined, sorting);\n }\n\n static useSuspenseWithPaging(pageSize: number, sorting?: Sorting): [QueryResultWithState<AgentUsageByWeek[]>, PerformQuery, SetSorting, SetPage, SetPageSize] {\n return useSuspenseQueryWithPaging<AgentUsageByWeek[], RecentWeeks>(RecentWeeks, new Paging(0, pageSize), undefined, sorting);\n }\n\n static when(condition: boolean): QueryWhen<RecentWeeks, AgentUsageByWeek[]> {\n return new QueryWhen<RecentWeeks, AgentUsageByWeek[]>(RecentWeeks, condition);\n }\n}\n"],"names":["RecentWeeksSortBy","query","RecentWeeksSortByWithoutQuery","RecentWeeks","QueryFor","route","queryName","treatWarningsAsErrors","roles","defaultValue","_sortBy","AgentUsageByWeek","requiredRequestParameters","parameterDescriptors","sortBy","use","sorting","useQuery","undefined","useWithPaging","pageSize","useQueryWithPaging","Paging","useSuspense","useSuspenseQuery","useSuspenseWithPaging","useSuspenseQueryWithPaging","when","condition","QueryWhen"],"mappings":";;;;AAAA;AACA;;;AAWA,MAAMA,iBAAAA,CAAAA;;IAEF,WAAA,CAAqBC,KAAkB,CAAE;aAApBA,KAAAA,GAAAA,KAAAA;AACrB,IAAA;AAEJ;AAEA,MAAMC,6BAAAA,CAAAA;AAEN;AAGA;;IAGO,MAAMC,WAAAA,SAAoBC,QAAAA,CAAAA;AACpBC,IAAAA,KAAAA,GAAgB,oCAAA;AAChBC,IAAAA,SAAAA,GAAoB,qDAAA;AACpBC,IAAAA,qBAAAA,GAAiC,KAAA;AACjCC,IAAAA,KAAAA,GAAkB,EAAE;AACpBC,IAAAA,YAAAA,GAAmC,EAAE;IAC7BC,OAAAA;IACjB,OAAwBA,OAAAA,GAAyC,IAAIR,6BAAAA,EAAAA;IAErE,WAAA,EAAc;AACV,QAAA,KAAK,CAACS,gBAAAA,EAAkB,IAAA,CAAA;AACxB,QAAA,IAAI,CAACD,OAAO,GAAG,IAAIV,kBAAkB,IAAI,CAAA;AAC7C,IAAA;AAEA,IAAA,IAAIY,yBAAAA,GAAsC;AACtC,QAAA,OAAO,EACN;AACL,IAAA;AAESC,IAAAA,oBAAAA,GAA8C,EACtD;AAGD,IAAA,IAAIC,MAAAA,GAA4B;QAC5B,OAAO,IAAI,CAACJ,OAAO;AACvB,IAAA;AAEA,IAAA,WAAWI,MAAAA,GAAwC;QAC/C,OAAO,IAAI,CAACJ,OAAO;AACvB,IAAA;IAEA,OAAOK,GAAAA,CAAIC,OAAiB,EAAwE;QAChG,OAAOC,QAAAA,CAA0Cd,aAAae,SAAAA,EAAWF,OAAAA,CAAAA;AAC7E,IAAA;AAEA,IAAA,OAAOG,aAAAA,CAAcC,QAAgB,EAAEJ,OAAiB,EAA8F;AAClJ,QAAA,OAAOK,mBAAoDlB,WAAAA,EAAa,IAAImB,MAAAA,CAAO,CAAA,EAAGF,WAAWF,SAAAA,EAAWF,OAAAA,CAAAA;AAChH,IAAA;IAEA,OAAOO,WAAAA,CAAYP,OAAiB,EAAwE;QACxG,OAAOQ,gBAAAA,CAAkDrB,aAAae,SAAAA,EAAWF,OAAAA,CAAAA;AACrF,IAAA;AAEA,IAAA,OAAOS,qBAAAA,CAAsBL,QAAgB,EAAEJ,OAAiB,EAA8F;AAC1J,QAAA,OAAOU,2BAA4DvB,WAAAA,EAAa,IAAImB,MAAAA,CAAO,CAAA,EAAGF,WAAWF,SAAAA,EAAWF,OAAAA,CAAAA;AACxH,IAAA;IAEA,OAAOW,IAAAA,CAAKC,SAAkB,EAA8C;QACxE,OAAO,IAAIC,UAA2C1B,WAAAA,EAAayB,SAAAA,CAAAA;AACvE,IAAA;AACJ;;;;"}