@zeitvu97/cms-sdk 0.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 (274) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +478 -0
  3. package/dist/chunks/_shared-48T7q0V3.js +26 -0
  4. package/dist/chunks/_shared-48T7q0V3.js.map +1 -0
  5. package/dist/chunks/auth.constant-DO7ZmsKg.js +68 -0
  6. package/dist/chunks/auth.constant-DO7ZmsKg.js.map +1 -0
  7. package/dist/chunks/mt5Retcode-DlZLQOLA.js +178 -0
  8. package/dist/chunks/mt5Retcode-DlZLQOLA.js.map +1 -0
  9. package/dist/chunks/storage.constant--64BDSPW.js +44 -0
  10. package/dist/chunks/storage.constant--64BDSPW.js.map +1 -0
  11. package/dist/common/constants/auth.constant.d.ts +54 -0
  12. package/dist/common/constants/auth.constant.d.ts.map +1 -0
  13. package/dist/common/constants/bars.constant.d.ts +15 -0
  14. package/dist/common/constants/bars.constant.d.ts.map +1 -0
  15. package/dist/common/constants/content-types.constant.d.ts +29 -0
  16. package/dist/common/constants/content-types.constant.d.ts.map +1 -0
  17. package/dist/common/constants/content.constant.d.ts +114 -0
  18. package/dist/common/constants/content.constant.d.ts.map +1 -0
  19. package/dist/common/constants/executions.constant.d.ts +56 -0
  20. package/dist/common/constants/executions.constant.d.ts.map +1 -0
  21. package/dist/common/constants/gov.constant.d.ts +118 -0
  22. package/dist/common/constants/gov.constant.d.ts.map +1 -0
  23. package/dist/common/constants/history.constant.d.ts +108 -0
  24. package/dist/common/constants/history.constant.d.ts.map +1 -0
  25. package/dist/common/constants/http.constant.d.ts +46 -0
  26. package/dist/common/constants/http.constant.d.ts.map +1 -0
  27. package/dist/common/constants/index.d.ts +16 -0
  28. package/dist/common/constants/index.d.ts.map +1 -0
  29. package/dist/common/constants/kalshi.constant.d.ts +35 -0
  30. package/dist/common/constants/kalshi.constant.d.ts.map +1 -0
  31. package/dist/common/constants/llm.constant.d.ts +37 -0
  32. package/dist/common/constants/llm.constant.d.ts.map +1 -0
  33. package/dist/common/constants/mt5-action.constant.d.ts +131 -0
  34. package/dist/common/constants/mt5-action.constant.d.ts.map +1 -0
  35. package/dist/common/constants/mt5.constant.d.ts +254 -0
  36. package/dist/common/constants/mt5.constant.d.ts.map +1 -0
  37. package/dist/common/constants/notifications.constant.d.ts +45 -0
  38. package/dist/common/constants/notifications.constant.d.ts.map +1 -0
  39. package/dist/common/constants/people.constant.d.ts +269 -0
  40. package/dist/common/constants/people.constant.d.ts.map +1 -0
  41. package/dist/common/constants/rules.constant.d.ts +14 -0
  42. package/dist/common/constants/rules.constant.d.ts.map +1 -0
  43. package/dist/common/constants/settings.constant.d.ts +17 -0
  44. package/dist/common/constants/settings.constant.d.ts.map +1 -0
  45. package/dist/common/constants/sort.constant.d.ts +14 -0
  46. package/dist/common/constants/sort.constant.d.ts.map +1 -0
  47. package/dist/common/constants/storage.constant.d.ts +74 -0
  48. package/dist/common/constants/storage.constant.d.ts.map +1 -0
  49. package/dist/common/helpers/format.d.ts +7 -0
  50. package/dist/common/helpers/format.d.ts.map +1 -0
  51. package/dist/common/helpers/format.js +20 -0
  52. package/dist/common/helpers/format.js.map +1 -0
  53. package/dist/common/helpers/mt5Retcode.d.ts +18 -0
  54. package/dist/common/helpers/mt5Retcode.d.ts.map +1 -0
  55. package/dist/common/helpers/mt5Retcode.js +2 -0
  56. package/dist/common/helpers/mt5Retcode.js.map +1 -0
  57. package/dist/common/utils/case.d.ts +12 -0
  58. package/dist/common/utils/case.d.ts.map +1 -0
  59. package/dist/common/utils/clone.d.ts +9 -0
  60. package/dist/common/utils/clone.d.ts.map +1 -0
  61. package/dist/composables/cbsStateKey.d.ts +27 -0
  62. package/dist/composables/cbsStateKey.d.ts.map +1 -0
  63. package/dist/core/createApi.d.ts +69 -0
  64. package/dist/core/createApi.d.ts.map +1 -0
  65. package/dist/core/createCmsSDK.d.ts +19 -0
  66. package/dist/core/createCmsSDK.d.ts.map +1 -0
  67. package/dist/core/credentials/TokenManager.d.ts +38 -0
  68. package/dist/core/credentials/TokenManager.d.ts.map +1 -0
  69. package/dist/core/credentials/credential.type.d.ts +16 -0
  70. package/dist/core/credentials/credential.type.d.ts.map +1 -0
  71. package/dist/core/credentials/resolveStorage.d.ts +6 -0
  72. package/dist/core/credentials/resolveStorage.d.ts.map +1 -0
  73. package/dist/core/credentials/storages/cookieStorage.d.ts +18 -0
  74. package/dist/core/credentials/storages/cookieStorage.d.ts.map +1 -0
  75. package/dist/core/credentials/storages/localStorageAdapter.d.ts +8 -0
  76. package/dist/core/credentials/storages/localStorageAdapter.d.ts.map +1 -0
  77. package/dist/core/credentials/storages/memoryStorage.d.ts +7 -0
  78. package/dist/core/credentials/storages/memoryStorage.d.ts.map +1 -0
  79. package/dist/core/errors.d.ts +26 -0
  80. package/dist/core/errors.d.ts.map +1 -0
  81. package/dist/core/sdk.type.d.ts +115 -0
  82. package/dist/core/sdk.type.d.ts.map +1 -0
  83. package/dist/core/ws/createEaeraWebSocket.d.ts +21 -0
  84. package/dist/core/ws/createEaeraWebSocket.d.ts.map +1 -0
  85. package/dist/core/ws/index.d.ts +4 -0
  86. package/dist/core/ws/index.d.ts.map +1 -0
  87. package/dist/core/ws/ws.constants.d.ts +246 -0
  88. package/dist/core/ws/ws.constants.d.ts.map +1 -0
  89. package/dist/core/ws/ws.events.d.ts +264 -0
  90. package/dist/core/ws/ws.events.d.ts.map +1 -0
  91. package/dist/core/ws/ws.type.d.ts +225 -0
  92. package/dist/core/ws/ws.type.d.ts.map +1 -0
  93. package/dist/index.d.ts +130 -0
  94. package/dist/index.d.ts.map +1 -0
  95. package/dist/index.js +8416 -0
  96. package/dist/index.js.map +1 -0
  97. package/dist/nuxt.d.ts +49 -0
  98. package/dist/nuxt.d.ts.map +1 -0
  99. package/dist/nuxt.js +47 -0
  100. package/dist/nuxt.js.map +1 -0
  101. package/dist/runtime/plugin.d.ts +6 -0
  102. package/dist/runtime/plugin.js +188 -0
  103. package/dist/runtime/plugin.js.map +1 -0
  104. package/dist/server/auth/cbs-callback.post.js +42 -0
  105. package/dist/server/auth/cbs-callback.post.js.map +1 -0
  106. package/dist/server/auth/cbs-start.post.js +34 -0
  107. package/dist/server/auth/cbs-start.post.js.map +1 -0
  108. package/dist/server/auth/idp-callback.get.js +52 -0
  109. package/dist/server/auth/idp-callback.get.js.map +1 -0
  110. package/dist/server/auth/idp-link.post.js +38 -0
  111. package/dist/server/auth/idp-link.post.js.map +1 -0
  112. package/dist/server/auth/idp-login.get.js +42 -0
  113. package/dist/server/auth/idp-login.get.js.map +1 -0
  114. package/dist/server/auth/idp-unlink.delete.js +38 -0
  115. package/dist/server/auth/idp-unlink.delete.js.map +1 -0
  116. package/dist/server/auth/login.post.js +42 -0
  117. package/dist/server/auth/login.post.js.map +1 -0
  118. package/dist/server/auth/logout.post.js +31 -0
  119. package/dist/server/auth/logout.post.js.map +1 -0
  120. package/dist/server/auth/refresh.post.js +46 -0
  121. package/dist/server/auth/refresh.post.js.map +1 -0
  122. package/dist/server/clear-token.delete.js +12 -0
  123. package/dist/server/clear-token.delete.js.map +1 -0
  124. package/dist/server/persist.post.js +31 -0
  125. package/dist/server/persist.post.js.map +1 -0
  126. package/dist/server/set-token.post.js +27 -0
  127. package/dist/server/set-token.post.js.map +1 -0
  128. package/dist/services/auth/auth.type.d.ts +66 -0
  129. package/dist/services/auth/auth.type.d.ts.map +1 -0
  130. package/dist/services/auth/index.d.ts +127 -0
  131. package/dist/services/auth/index.d.ts.map +1 -0
  132. package/dist/services/auth/mock.d.ts +13 -0
  133. package/dist/services/auth/mock.d.ts.map +1 -0
  134. package/dist/services/bars/bars.type.d.ts +78 -0
  135. package/dist/services/bars/bars.type.d.ts.map +1 -0
  136. package/dist/services/bars/index.d.ts +24 -0
  137. package/dist/services/bars/index.d.ts.map +1 -0
  138. package/dist/services/bars/mock.d.ts +23 -0
  139. package/dist/services/bars/mock.d.ts.map +1 -0
  140. package/dist/services/content/content.type.d.ts +832 -0
  141. package/dist/services/content/content.type.d.ts.map +1 -0
  142. package/dist/services/content/filter.d.ts +46 -0
  143. package/dist/services/content/filter.d.ts.map +1 -0
  144. package/dist/services/content/index.d.ts +35 -0
  145. package/dist/services/content/index.d.ts.map +1 -0
  146. package/dist/services/content/mock.d.ts +16 -0
  147. package/dist/services/content/mock.d.ts.map +1 -0
  148. package/dist/services/content-types/content-types.type.d.ts +70 -0
  149. package/dist/services/content-types/content-types.type.d.ts.map +1 -0
  150. package/dist/services/content-types/index.d.ts +18 -0
  151. package/dist/services/content-types/index.d.ts.map +1 -0
  152. package/dist/services/content-types/mock.d.ts +15 -0
  153. package/dist/services/content-types/mock.d.ts.map +1 -0
  154. package/dist/services/executions/executions.type.d.ts +67 -0
  155. package/dist/services/executions/executions.type.d.ts.map +1 -0
  156. package/dist/services/executions/index.d.ts +30 -0
  157. package/dist/services/executions/index.d.ts.map +1 -0
  158. package/dist/services/executions/mock.d.ts +29 -0
  159. package/dist/services/executions/mock.d.ts.map +1 -0
  160. package/dist/services/gov/gov.type.d.ts +740 -0
  161. package/dist/services/gov/gov.type.d.ts.map +1 -0
  162. package/dist/services/gov/index.d.ts +84 -0
  163. package/dist/services/gov/index.d.ts.map +1 -0
  164. package/dist/services/history/history.type.d.ts +167 -0
  165. package/dist/services/history/history.type.d.ts.map +1 -0
  166. package/dist/services/history/index.d.ts +38 -0
  167. package/dist/services/history/index.d.ts.map +1 -0
  168. package/dist/services/history/mock.d.ts +21 -0
  169. package/dist/services/history/mock.d.ts.map +1 -0
  170. package/dist/services/kalshi/index.d.ts +19 -0
  171. package/dist/services/kalshi/index.d.ts.map +1 -0
  172. package/dist/services/kalshi/kalshi.type.d.ts +99 -0
  173. package/dist/services/kalshi/kalshi.type.d.ts.map +1 -0
  174. package/dist/services/kalshi/mock.d.ts +5 -0
  175. package/dist/services/kalshi/mock.d.ts.map +1 -0
  176. package/dist/services/llm/index.d.ts +38 -0
  177. package/dist/services/llm/index.d.ts.map +1 -0
  178. package/dist/services/llm/llm.type.d.ts +106 -0
  179. package/dist/services/llm/llm.type.d.ts.map +1 -0
  180. package/dist/services/notifications/index.d.ts +38 -0
  181. package/dist/services/notifications/index.d.ts.map +1 -0
  182. package/dist/services/notifications/mock.d.ts +39 -0
  183. package/dist/services/notifications/mock.d.ts.map +1 -0
  184. package/dist/services/notifications/notifications.type.d.ts +75 -0
  185. package/dist/services/notifications/notifications.type.d.ts.map +1 -0
  186. package/dist/services/people/_invoke.d.ts +26 -0
  187. package/dist/services/people/_invoke.d.ts.map +1 -0
  188. package/dist/services/people/copilot/index.d.ts +132 -0
  189. package/dist/services/people/copilot/index.d.ts.map +1 -0
  190. package/dist/services/people/identity/actions.d.ts +116 -0
  191. package/dist/services/people/identity/actions.d.ts.map +1 -0
  192. package/dist/services/people/identity/ct.types.d.ts +133 -0
  193. package/dist/services/people/identity/ct.types.d.ts.map +1 -0
  194. package/dist/services/people/identity/index.d.ts +14 -0
  195. package/dist/services/people/identity/index.d.ts.map +1 -0
  196. package/dist/services/people/identity/projections.d.ts +63 -0
  197. package/dist/services/people/identity/projections.d.ts.map +1 -0
  198. package/dist/services/people/index.d.ts +31 -0
  199. package/dist/services/people/index.d.ts.map +1 -0
  200. package/dist/services/people/legal/actions.d.ts +161 -0
  201. package/dist/services/people/legal/actions.d.ts.map +1 -0
  202. package/dist/services/people/legal/ct.types.d.ts +186 -0
  203. package/dist/services/people/legal/ct.types.d.ts.map +1 -0
  204. package/dist/services/people/legal/index.d.ts +15 -0
  205. package/dist/services/people/legal/index.d.ts.map +1 -0
  206. package/dist/services/people/packops/index.d.ts +70 -0
  207. package/dist/services/people/packops/index.d.ts.map +1 -0
  208. package/dist/services/people/packops/packops.type.d.ts +183 -0
  209. package/dist/services/people/packops/packops.type.d.ts.map +1 -0
  210. package/dist/services/people/perms/actions.d.ts +214 -0
  211. package/dist/services/people/perms/actions.d.ts.map +1 -0
  212. package/dist/services/people/perms/ct.types.d.ts +140 -0
  213. package/dist/services/people/perms/ct.types.d.ts.map +1 -0
  214. package/dist/services/people/perms/index.d.ts +14 -0
  215. package/dist/services/people/perms/index.d.ts.map +1 -0
  216. package/dist/services/people/perms/projections.d.ts +47 -0
  217. package/dist/services/people/perms/projections.d.ts.map +1 -0
  218. package/dist/services/people/process/actions.d.ts +154 -0
  219. package/dist/services/people/process/actions.d.ts.map +1 -0
  220. package/dist/services/people/process/ct.types.d.ts +304 -0
  221. package/dist/services/people/process/ct.types.d.ts.map +1 -0
  222. package/dist/services/people/process/index.d.ts +12 -0
  223. package/dist/services/people/process/index.d.ts.map +1 -0
  224. package/dist/services/people/shared.types.d.ts +36 -0
  225. package/dist/services/people/shared.types.d.ts.map +1 -0
  226. package/dist/services/rules/conditions.d.ts +264 -0
  227. package/dist/services/rules/conditions.d.ts.map +1 -0
  228. package/dist/services/rules/index.d.ts +49 -0
  229. package/dist/services/rules/index.d.ts.map +1 -0
  230. package/dist/services/rules/llm-rule.constant.d.ts +84 -0
  231. package/dist/services/rules/llm-rule.constant.d.ts.map +1 -0
  232. package/dist/services/rules/mock.d.ts +20 -0
  233. package/dist/services/rules/mock.d.ts.map +1 -0
  234. package/dist/services/rules/rules.type.d.ts +262 -0
  235. package/dist/services/rules/rules.type.d.ts.map +1 -0
  236. package/dist/services/rules/triggers.d.ts +140 -0
  237. package/dist/services/rules/triggers.d.ts.map +1 -0
  238. package/dist/services/settings/index.d.ts +36 -0
  239. package/dist/services/settings/index.d.ts.map +1 -0
  240. package/dist/services/settings/mock.d.ts +14 -0
  241. package/dist/services/settings/mock.d.ts.map +1 -0
  242. package/dist/services/settings/settings.type.d.ts +39 -0
  243. package/dist/services/settings/settings.type.d.ts.map +1 -0
  244. package/dist/stores/auth.d.ts +192 -0
  245. package/dist/stores/auth.d.ts.map +1 -0
  246. package/dist/stores/bars.d.ts +288 -0
  247. package/dist/stores/bars.d.ts.map +1 -0
  248. package/dist/stores/content.d.ts +4101 -0
  249. package/dist/stores/content.d.ts.map +1 -0
  250. package/dist/stores/executions.d.ts +249 -0
  251. package/dist/stores/executions.d.ts.map +1 -0
  252. package/dist/stores/gov.d.ts +238 -0
  253. package/dist/stores/gov.d.ts.map +1 -0
  254. package/dist/stores/history.d.ts +833 -0
  255. package/dist/stores/history.d.ts.map +1 -0
  256. package/dist/stores/index.d.ts +15 -0
  257. package/dist/stores/index.d.ts.map +1 -0
  258. package/dist/stores/kalshi.d.ts +728 -0
  259. package/dist/stores/kalshi.d.ts.map +1 -0
  260. package/dist/stores/llm-providers.d.ts +97 -0
  261. package/dist/stores/llm-providers.d.ts.map +1 -0
  262. package/dist/stores/llm.d.ts +102 -0
  263. package/dist/stores/llm.d.ts.map +1 -0
  264. package/dist/stores/people.d.ts +596 -0
  265. package/dist/stores/people.d.ts.map +1 -0
  266. package/dist/stores/persist.d.ts +58 -0
  267. package/dist/stores/persist.d.ts.map +1 -0
  268. package/dist/stores/rules.d.ts +485 -0
  269. package/dist/stores/rules.d.ts.map +1 -0
  270. package/dist/stores/settings.d.ts +36 -0
  271. package/dist/stores/settings.d.ts.map +1 -0
  272. package/dist/stores/ws.d.ts +66 -0
  273. package/dist/stores/ws.d.ts.map +1 -0
  274. package/package.json +90 -0
@@ -0,0 +1,106 @@
1
+ import { LlmProviderType } from '../../common/constants/llm.constant';
2
+ /** `PromptCreateRequest` → POST /api/v1/llm/prompts.
3
+ *
4
+ * Per-call LLM tuning knobs (`maxTokens` / `temperature`) are NOT exposed
5
+ * here — they live on the linked `llm_agent` rule as
6
+ * `executionParams.llmEval.maxTokens`. The backend has no `temperature`
7
+ * parameter; `maxTokens` is the only per-completion cap the dashboard can
8
+ * surface today.
9
+ */
10
+ export interface PromptCreatePayload {
11
+ name: string;
12
+ /** User/instruction content (the prompt body). */
13
+ content: string;
14
+ systemPrompt?: string;
15
+ description?: string;
16
+ model?: string | null;
17
+ }
18
+ /** `PromptUpdateRequest` → PUT /api/v1/llm/prompts/{name} (all optional). */
19
+ export interface PromptUpdatePayload {
20
+ content?: string;
21
+ systemPrompt?: string;
22
+ description?: string;
23
+ model?: string | null;
24
+ version?: string;
25
+ }
26
+ /**
27
+ * A prompt template row.
28
+ *
29
+ * `GET /llm/prompts` (list) returns only `{ id, name, version, description,
30
+ * variables, model }` — `content` / `systemPrompt` are **not** included. Fetch
31
+ * the single template (`GET /llm/prompts/{name}`) to read those for editing.
32
+ */
33
+ export interface PromptTemplate {
34
+ id?: string | number;
35
+ name: string;
36
+ version?: string;
37
+ description?: string;
38
+ variables?: string[];
39
+ model?: string | null;
40
+ /** Present only on the single-template GET, not the list. */
41
+ content?: string;
42
+ /** Present only on the single-template GET, not the list. */
43
+ systemPrompt?: string;
44
+ }
45
+ /** `GET /llm/prompts` → `{ templates: PromptTemplate[] }`. */
46
+ export interface PromptListResponse {
47
+ templates: PromptTemplate[];
48
+ }
49
+ /** `POST` / `PUT` → `{ id, name, version }`. */
50
+ export interface PromptMutationResponse {
51
+ id?: string | number;
52
+ name: string;
53
+ version?: string;
54
+ }
55
+ /** Backend-supported provider types (`eaera_cms/llm/`). */
56
+ export type { LlmProviderType };
57
+ /**
58
+ * A registered LLM provider. Providers live **in-process** on whichever pod
59
+ * created them (`ProviderRegistry`) — registrations made via
60
+ * `POST /api/v1/llm/providers` are lost on pod restart unless env- or
61
+ * content-backed (see `risk-rules-api-guide.md` §7.C). The `apiKey` is
62
+ * write-only and never returned on read.
63
+ */
64
+ export interface LlmProvider {
65
+ name: string;
66
+ providerType: LlmProviderType;
67
+ baseUrl?: string;
68
+ /** Supported model IDs (per-provider). */
69
+ models: string[];
70
+ /** Provider-specific config (e.g. `{ timeout: 180 }`). */
71
+ config?: Record<string, unknown>;
72
+ isEnabled: boolean;
73
+ /** Health flag — false when the provider cannot be reached. */
74
+ isHealthy: boolean;
75
+ }
76
+ /** `POST /api/v1/llm/providers` body. `apiKey` is write-only. */
77
+ export interface LlmProviderCreatePayload {
78
+ name: string;
79
+ providerType: LlmProviderType;
80
+ baseUrl?: string;
81
+ /** Write-only — never echoed back by the API. */
82
+ apiKey?: string;
83
+ models?: string[];
84
+ config?: Record<string, unknown>;
85
+ isEnabled?: boolean;
86
+ }
87
+ /** `PUT /api/v1/llm/providers/{name}` body (all optional). */
88
+ export interface LlmProviderUpdatePayload {
89
+ providerType?: LlmProviderType;
90
+ baseUrl?: string;
91
+ /** Write-only. */
92
+ apiKey?: string;
93
+ models?: string[];
94
+ config?: Record<string, unknown>;
95
+ isEnabled?: boolean;
96
+ }
97
+ /** `GET /api/v1/llm/providers` → `{ providers: LlmProvider[] }`. */
98
+ export interface LlmProviderListResponse {
99
+ providers: LlmProvider[];
100
+ }
101
+ /** `GET /api/v1/llm/providers/{name}/models`. */
102
+ export interface LlmProviderModelsResponse {
103
+ models: string[];
104
+ healthy: boolean;
105
+ }
106
+ //# sourceMappingURL=llm.type.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"llm.type.d.ts","sourceRoot":"","sources":["../../../src/services/llm/llm.type.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ import { $Fetch } from 'ofetch';
2
+ import { NotificationRenderPayload, NotificationRenderResult, NotificationTemplateCreatePayload, NotificationTemplateListQuery, NotificationTemplateListResponse, NotificationTemplateUpdatePayload, NotificationTemplateVersion, ReportTemplate, ReportTemplatePreviewPayload } from './notifications.type';
3
+ export interface INotificationsServiceOptions {
4
+ /** The CMS `$Fetch` instance (one of `sdk.apis`). */
5
+ api: $Fetch;
6
+ /** Lazy flag — when true, the service returns fake data. */
7
+ mock: () => boolean;
8
+ }
9
+ export interface INotificationsService {
10
+ /** List template versions — every query field is a filter (offset/limit paging). */
11
+ list(query?: NotificationTemplateListQuery): Promise<NotificationTemplateListResponse>;
12
+ /** Read one version by `{template_id}`. */
13
+ get(templateId: string | number): Promise<NotificationTemplateVersion>;
14
+ /** Version history for a name (+ locale variant). */
15
+ versionsOf(name: string, locale?: string): Promise<NotificationTemplateVersion[]>;
16
+ /** Create a Mustache draft (`notify:templates:manage`). */
17
+ createDraft(payload: NotificationTemplateCreatePayload): Promise<NotificationTemplateVersion>;
18
+ /** Edit a DRAFT only — enabled/archived return `409`; create a same-name/locale
19
+ * draft for the next version instead. */
20
+ updateDraft(templateId: string | number, payload: NotificationTemplateUpdatePayload): Promise<NotificationTemplateVersion>;
21
+ /** Enable a draft + archive the previously enabled version of the variant. */
22
+ publish(templateId: string | number): Promise<NotificationTemplateVersion>;
23
+ /** Soft-archive a version — audit history remains. */
24
+ archive(templateId: string | number): Promise<void>;
25
+ /** Ad-hoc Mustache preview — `{templateStr, context}`; no persistence. */
26
+ render(payload: NotificationRenderPayload): Promise<NotificationRenderResult>;
27
+ /** List report templates (People seed: `people.access-review-report`). */
28
+ listReportTemplates(): Promise<{
29
+ items: ReportTemplate[];
30
+ total: number;
31
+ }>;
32
+ /** Read one report definition. */
33
+ getReportTemplate(templateId: string | number): Promise<ReportTemplate>;
34
+ /** Preview a report definition with sample data (read-only lane). */
35
+ previewReportTemplate(templateId: string | number, payload: ReportTemplatePreviewPayload): Promise<unknown>;
36
+ }
37
+ export declare function createNotificationsService(opts: INotificationsServiceOptions): INotificationsService;
38
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/notifications/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAiBrC,OAAO,KAAK,EACV,yBAAyB,EACzB,wBAAwB,EACxB,iCAAiC,EACjC,6BAA6B,EAC7B,gCAAgC,EAChC,iCAAiC,EACjC,2BAA2B,EAC3B,cAAc,EACd,4BAA4B,EAC7B,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,4BAA4B;IAC3C,qDAAqD;IACrD,GAAG,EAAE,MAAM,CAAC;IACZ,4DAA4D;IAC5D,IAAI,EAAE,MAAM,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,qBAAqB;IACpC,oFAAoF;IACpF,IAAI,CAAC,KAAK,CAAC,EAAE,6BAA6B,GAAG,OAAO,CAAC,gCAAgC,CAAC,CAAC;IACvF,2CAA2C;IAC3C,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;IACvE,qDAAqD;IACrD,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,EAAE,CAAC,CAAC;IAClF,2DAA2D;IAC3D,WAAW,CAAC,OAAO,EAAE,iCAAiC,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAC9F;8CAC0C;IAC1C,WAAW,CACT,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,OAAO,EAAE,iCAAiC,GACzC,OAAO,CAAC,2BAA2B,CAAC,CAAC;IACxC,8EAA8E;IAC9E,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAC3E,sDAAsD;IACtD,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,0EAA0E;IAC1E,MAAM,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAC9E,0EAA0E;IAC1E,mBAAmB,IAAI,OAAO,CAAC;QAAE,KAAK,EAAE,cAAc,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3E,kCAAkC;IAClC,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IACxE,qEAAqE;IACrE,qBAAqB,CACnB,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,OAAO,EAAE,4BAA4B,GACpC,OAAO,CAAC,OAAO,CAAC,CAAC;CACrB;AAED,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,4BAA4B,GACjC,qBAAqB,CA0GvB"}
@@ -0,0 +1,39 @@
1
+ import { NotificationTemplateVersion, ReportTemplate } from './notifications.type';
2
+ export declare function mockNotificationList(query: {
3
+ name?: string;
4
+ locale?: string;
5
+ state?: string;
6
+ category?: string;
7
+ limit?: number;
8
+ offset?: number;
9
+ }): {
10
+ items: NotificationTemplateVersion[];
11
+ total: number;
12
+ };
13
+ export declare function mockNotificationGet(id: string | number): NotificationTemplateVersion | undefined;
14
+ export declare function mockNotificationVersions(name: string, locale?: string): NotificationTemplateVersion[];
15
+ export declare function mockNotificationCreate(payload: {
16
+ name: string;
17
+ locale: string;
18
+ subject?: string;
19
+ body: string;
20
+ category?: string;
21
+ fallbackPolicy?: string;
22
+ }): NotificationTemplateVersion;
23
+ export declare function mockNotificationUpdate(id: string | number, patch: Record<string, unknown>): NotificationTemplateVersion | {
24
+ conflict: true;
25
+ };
26
+ export declare function mockNotificationPublish(id: string | number): NotificationTemplateVersion | {
27
+ conflict: true;
28
+ };
29
+ export declare function mockNotificationArchive(id: string | number): boolean;
30
+ export declare function mockRender(templateStr: string, context: Record<string, unknown>): {
31
+ subject?: string;
32
+ body: string;
33
+ };
34
+ export declare function mockReportTemplates(): {
35
+ items: ReportTemplate[];
36
+ total: number;
37
+ };
38
+ export declare function mockReportTemplate(id: string | number): ReportTemplate | undefined;
39
+ //# sourceMappingURL=mock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock.d.ts","sourceRoot":"","sources":["../../../src/services/notifications/mock.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,2BAA2B,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAyCxF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE;IAC1C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG;IAAE,KAAK,EAAE,2BAA2B,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAS1D;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,2BAA2B,GAAG,SAAS,CAGhG;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,MAAM,GACd,2BAA2B,EAAE,CAE/B;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,GAAG,2BAA2B,CAa9B;AAED,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,MAAM,GAAG,MAAM,EACnB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,2BAA2B,GAAG;IAAE,QAAQ,EAAE,IAAI,CAAA;CAAE,CAMlD;AAED,wBAAgB,uBAAuB,CACrC,EAAE,EAAE,MAAM,GAAG,MAAM,GAClB,2BAA2B,GAAG;IAAE,QAAQ,EAAE,IAAI,CAAA;CAAE,CAgBlD;AAED,wBAAgB,uBAAuB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAKpE;AAED,wBAAgB,UAAU,CACxB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAIpC;AAED,wBAAgB,mBAAmB,IAAI;IAAE,KAAK,EAAE,cAAc,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAEhF;AAED,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,cAAc,GAAG,SAAS,CAGlF"}
@@ -0,0 +1,75 @@
1
+ import { NotificationFallbackPolicy, NotificationTemplateState } from '../../common/constants/notifications.constant';
2
+ /** Query for `GET /notifications/templates` — every field is a filter. */
3
+ export interface NotificationTemplateListQuery {
4
+ /** Template name — the variant family (audience variant = `<name>.<audience>`). */
5
+ name?: string;
6
+ /** Prefix match — `name LIKE '<prefix>%'` (BE `name_prefix`). */
7
+ namePrefix?: string;
8
+ /** Locale dimension of the variant (e.g. `vi`, `en`). */
9
+ locale?: string;
10
+ /** Lifecycle state filter (draft | enabled | archived). */
11
+ state?: NotificationTemplateState | string;
12
+ /** Category filter (e.g. `workflow`). */
13
+ category?: string;
14
+ /** Standard CMS pagination (`page`/`per_page` — §7.3, updated 2026-09-11). */
15
+ page?: number;
16
+ perPage?: number;
17
+ }
18
+ /** One notification-template VERSION (the `{template_id}` addressable row). */
19
+ export interface NotificationTemplateVersion {
20
+ id: string | number;
21
+ /** Stable family name, e.g. `people.welcome`; audience variant `<name>.<audience>`. */
22
+ name: string;
23
+ /** The variant dimension — one row per (name, locale). */
24
+ locale: string;
25
+ /** Mustache — rendered per recipient and COPIED to the notification row at
26
+ * creation (a later version never changes an in-flight notification). */
27
+ subject?: string;
28
+ body: string;
29
+ category?: string;
30
+ fallbackPolicy?: NotificationFallbackPolicy;
31
+ state: NotificationTemplateState;
32
+ createdAt?: string;
33
+ updatedAt?: string;
34
+ [key: string]: unknown;
35
+ }
36
+ /** POST body — create a Mustache draft (`notify:templates:manage`). */
37
+ export interface NotificationTemplateCreatePayload {
38
+ name: string;
39
+ locale: string;
40
+ subject: string;
41
+ body: string;
42
+ category?: string;
43
+ fallbackPolicy?: NotificationFallbackPolicy;
44
+ }
45
+ /** PUT body — draft ONLY; enabled/archived rows return 409. Create a
46
+ * same-name/locale draft for the next version instead. */
47
+ export type NotificationTemplateUpdatePayload = Partial<NotificationTemplateCreatePayload>;
48
+ /** List envelope (engine list shape). */
49
+ export interface NotificationTemplateListResponse {
50
+ items: NotificationTemplateVersion[];
51
+ total: number;
52
+ }
53
+ /** `POST /notifications/templates/render` — ad-hoc preview, no persistence. */
54
+ export interface NotificationRenderPayload {
55
+ templateStr: string;
56
+ context: Record<string, unknown>;
57
+ }
58
+ /** Render result — subject/body with placeholders resolved. */
59
+ export interface NotificationRenderResult {
60
+ subject?: string;
61
+ body: string;
62
+ [key: string]: unknown;
63
+ }
64
+ /** Report-template row — engine-owned schema; the People seed
65
+ * (`people.access-review-report`) is pack-managed (read-only for the portal). */
66
+ export interface ReportTemplate {
67
+ id: string | number;
68
+ name?: string;
69
+ [key: string]: unknown;
70
+ }
71
+ /** `POST /report-templates/{template_id}/preview` body. */
72
+ export interface ReportTemplatePreviewPayload {
73
+ sampleData: unknown[];
74
+ }
75
+ //# sourceMappingURL=notifications.type.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notifications.type.d.ts","sourceRoot":"","sources":["../../../src/services/notifications/notifications.type.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACV,0BAA0B,EAC1B,yBAAyB,EAC1B,MAAM,+CAA+C,CAAC;AAEvD,0EAA0E;AAC1E,MAAM,WAAW,6BAA6B;IAC5C,mFAAmF;IACnF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iEAAiE;IACjE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2DAA2D;IAC3D,KAAK,CAAC,EAAE,yBAAyB,GAAG,MAAM,CAAC;IAC3C,yCAAyC;IACzC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8EAA8E;IAC9E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,+EAA+E;AAC/E,MAAM,WAAW,2BAA2B;IAC1C,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,uFAAuF;IACvF,IAAI,EAAE,MAAM,CAAC;IACb,0DAA0D;IAC1D,MAAM,EAAE,MAAM,CAAC;IACf;8EAC0E;IAC1E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,0BAA0B,CAAC;IAC5C,KAAK,EAAE,yBAAyB,CAAC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,uEAAuE;AACvE,MAAM,WAAW,iCAAiC;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,0BAA0B,CAAC;CAC7C;AAED;2DAC2D;AAC3D,MAAM,MAAM,iCAAiC,GAAG,OAAO,CAAC,iCAAiC,CAAC,CAAC;AAE3F,yCAAyC;AACzC,MAAM,WAAW,gCAAgC;IAC/C,KAAK,EAAE,2BAA2B,EAAE,CAAC;IACrC,KAAK,EAAE,MAAM,CAAC;CACf;AAED,+EAA+E;AAC/E,MAAM,WAAW,yBAAyB;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,+DAA+D;AAC/D,MAAM,WAAW,wBAAwB;IACvC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;kFACkF;AAClF,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,2DAA2D;AAC3D,MAAM,WAAW,4BAA4B;IAC3C,UAAU,EAAE,OAAO,EAAE,CAAC;CACvB"}
@@ -0,0 +1,26 @@
1
+ import { $Fetch } from 'ofetch';
2
+ import { CONTENT_ENDPOINT } from '../../common/constants/content.constant';
3
+ import { ActionResponse } from '../content/content.type';
4
+ import { PEOPLE_ACTION_NAME, PeopleActionName } from '../../common/constants/people.constant';
5
+ import { PeopleActionOpts } from './shared.types';
6
+ export interface InvokeDeps {
7
+ api: $Fetch;
8
+ actionEndpoint: (uuid: string, actionName: string) => string;
9
+ }
10
+ export interface InvokeBody extends PeopleActionOpts {
11
+ params: Record<string, unknown>;
12
+ }
13
+ /** Row-scoped: `POST /content/{uuid}/actions/{actionName}`. */
14
+ export declare function _invokeRowAction(deps: InvokeDeps, uuid: string, actionName: PeopleActionName, params?: object, opts?: PeopleActionOpts): Promise<ActionResponse>;
15
+ /**
16
+ * Row-scoped with a **dynamic** action name — for GENERATED per-flow CTs
17
+ * (FEAT-010) whose action keys are authored in the request-type definition
18
+ * (e.g. `manager_approve`), not enumerated in `PEOPLE_ACTION_NAME`.
19
+ */
20
+ export declare function _invokeRowActionDynamic(deps: InvokeDeps, uuid: string, actionName: string, params?: object, opts?: PeopleActionOpts): Promise<ActionResponse>;
21
+ /** Factory action: `POST /content/types/{type}/actions/{actionName}`. */
22
+ export declare function _invokeFactoryAction(deps: InvokeDeps, typeName: string, actionName: PeopleActionName, params?: object, opts?: PeopleActionOpts): Promise<ActionResponse>;
23
+ /** Re-export the engine's generic endpoint for callers that want to spread
24
+ * the SDK-internal helper rather than `CONTENT_ENDPOINT.action(uuid, …)`. */
25
+ export { CONTENT_ENDPOINT, PEOPLE_ACTION_NAME };
26
+ //# sourceMappingURL=_invoke.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_invoke.d.ts","sourceRoot":"","sources":["../../../src/services/people/_invoke.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,KAAK,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AACnG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,MAAM,CAAC;CAC9D;AAED,MAAM,WAAW,UAAW,SAAQ,gBAAgB;IAClD,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAQD,+DAA+D;AAC/D,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,gBAAgB,EAC5B,MAAM,CAAC,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,gBAAgB,GACtB,OAAO,CAAC,cAAc,CAAC,CAEzB;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,gBAAgB,GACtB,OAAO,CAAC,cAAc,CAAC,CAKzB;AAED,yEAAyE;AACzE,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,gBAAgB,EAC5B,MAAM,CAAC,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,gBAAgB,GACtB,OAAO,CAAC,cAAc,CAAC,CAKzB;AAMD;8EAC8E;AAC9E,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,CAAC"}
@@ -0,0 +1,132 @@
1
+ import { $Fetch } from 'ofetch';
2
+ /** Copilot lanes (registry `_LANE_AUTHORING_SCOPES`). */
3
+ export type PeopleCopilotLane = 'request-type' | 'process-type' | 'policy' | 'machine-face-kind';
4
+ /** Assist modes per lane (context_assembly — comprehend is read-only). */
5
+ export type PeopleCopilotMode = 'author' | 'amend' | 'comprehend' | (string & {});
6
+ /** `op=start` request body. */
7
+ export interface PeopleCopilotStartParams {
8
+ op: 'start';
9
+ lane: PeopleCopilotLane;
10
+ mode: PeopleCopilotMode;
11
+ /** Content uuid of the T1 target row (request_type / process_type / policy). */
12
+ target_ref: string;
13
+ }
14
+ /** Grounding bundle returned by `op=start` (advisory context only). */
15
+ export interface PeopleCopilotBundle {
16
+ lane: string;
17
+ mode: string;
18
+ target_ref: string;
19
+ rendered_grounding: string;
20
+ catalogue_pin: string;
21
+ schema_ref?: string | null;
22
+ example_refs: string[];
23
+ dry_run?: Record<string, unknown> | null;
24
+ validation_errors: string[];
25
+ status_warning?: string | null;
26
+ prompt_hash: string;
27
+ }
28
+ /** `op=start` response. */
29
+ export interface PeopleCopilotStartResult {
30
+ conversation_id: string;
31
+ bundle: PeopleCopilotBundle;
32
+ prompt_hash: string;
33
+ transport: string;
34
+ advisory: string;
35
+ }
36
+ /** A pending/confirmed/discarded proposal on the ledger (D2 contract). */
37
+ export interface PeopleCopilotProposal {
38
+ id: string;
39
+ kind: string;
40
+ summary: string;
41
+ proposal_hash: string;
42
+ status: 'pending' | 'confirmed' | 'discarded' | (string & {});
43
+ confirm_actor?: string | null;
44
+ execution_ref?: string | null;
45
+ commit_sha?: string | null;
46
+ }
47
+ /** `op=record` request body — mirror one user turn and/or transition a
48
+ * proposal and/or end the session (pending ⇒ discarded on end). */
49
+ export interface PeopleCopilotRecordParams {
50
+ op: 'record';
51
+ conversation_id: number | string;
52
+ /** Only user-authored turns accepted without a gateway receipt. */
53
+ turn?: {
54
+ role: 'user';
55
+ content: string;
56
+ };
57
+ proposal?: {
58
+ id: string;
59
+ kind?: 'edit';
60
+ summary?: string;
61
+ /** The authored tree — `diff.after` is hashed into `proposal_hash`. */
62
+ diff?: {
63
+ after: Record<string, unknown>;
64
+ };
65
+ status: 'pending' | 'confirmed' | 'discarded';
66
+ /** Required when status=confirmed — the HUMAN edit execution uuid
67
+ * (host ran the real action; the route verifies provenance). */
68
+ execution_ref?: string;
69
+ commit_sha?: string;
70
+ };
71
+ end?: boolean;
72
+ }
73
+ /** `op=record` response. */
74
+ export interface PeopleCopilotRecordResult {
75
+ conversation_id: string;
76
+ status: 'active' | 'completed';
77
+ metadata_update_mode: 'metadata' | 'none';
78
+ message: boolean;
79
+ proposal: {
80
+ id: string;
81
+ status: string;
82
+ ok: boolean;
83
+ } | null;
84
+ ended: boolean;
85
+ }
86
+ /** One assist session row (E4a projection). */
87
+ export interface PeopleCopilotSession {
88
+ conversation_id: string;
89
+ user_id: number;
90
+ status: 'active' | 'completed' | (string & {});
91
+ lane: string;
92
+ target_ref: string;
93
+ mode: string;
94
+ context_refs: Record<string, unknown>;
95
+ proposals: PeopleCopilotProposal[];
96
+ total_tokens: number;
97
+ total_cost_usd: number;
98
+ created_at: string | null;
99
+ completed_at: string | null;
100
+ }
101
+ /** `GET /sessions` response. */
102
+ export interface PeopleCopilotSessionsResult {
103
+ items: PeopleCopilotSession[];
104
+ count: number;
105
+ cursor: string | null;
106
+ has_more: boolean;
107
+ }
108
+ export interface IPeopleCopilotService {
109
+ /** `op=start` — lane permission + spend-cap + context assembly; creates
110
+ * the assist ledger row on engine `llm_conversations`. */
111
+ start(params: PeopleCopilotStartParams): Promise<PeopleCopilotStartResult>;
112
+ /** `op=record` — mirror a user turn / transition a proposal / end. */
113
+ record(params: PeopleCopilotRecordParams): Promise<PeopleCopilotRecordResult>;
114
+ /** Lane/target/status projection over the caller's assist ledger. */
115
+ sessions(query?: {
116
+ lane?: string;
117
+ targetRef?: string;
118
+ status?: string;
119
+ limit?: number;
120
+ cursor?: string;
121
+ }): Promise<PeopleCopilotSessionsResult>;
122
+ }
123
+ export interface IPeopleCopilotServiceOptions {
124
+ /** The CMS `$Fetch` instance (one of `sdk.apis`). */
125
+ api: $Fetch;
126
+ }
127
+ export declare const PEOPLE_COPILOT_ENDPOINT: {
128
+ readonly ASSIST: "/api/v1/people/copilot/assist";
129
+ readonly SESSIONS: "/api/v1/people/copilot/sessions";
130
+ };
131
+ export declare function createPeopleCopilotService(opts: IPeopleCopilotServiceOptions): IPeopleCopilotService;
132
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/services/people/copilot/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,116 @@
1
+ import { ActionResponse } from '../../content/content.type';
2
+ import { PeopleActionOpts } from '../shared.types';
3
+ import { InvokeDeps } from '../_invoke';
4
+ /** `resolve_desired` — idempotent by `eventId` (repeat ⇒ NO_OP audited). */
5
+ export interface PeopleResolveDesiredParams {
6
+ employmentRef: string;
7
+ providerRef: string;
8
+ employment: {
9
+ ref: string;
10
+ leRef: string;
11
+ confirmedAt: string;
12
+ startDate: string;
13
+ };
14
+ eventId?: string;
15
+ }
16
+ export interface PeopleResolveDesiredOutput {
17
+ itemsCreated: string[];
18
+ packageSize: number;
19
+ }
20
+ /** `retry_item` — from `failed` only; exhausted ⇒ `retry_exhausted` +
21
+ * `manual_resolution`. */
22
+ export interface PeopleRetryItemOutput {
23
+ attempt: {
24
+ count: number;
25
+ max: number;
26
+ nextRetryAt?: string | null;
27
+ retryAfterRespected?: boolean;
28
+ };
29
+ }
30
+ /** `resolve_manually` — `evidence_required` without evidence. The honest path. */
31
+ export interface PeopleResolveManuallyParams {
32
+ itemRef: string;
33
+ outcome: {
34
+ evidence: Record<string, unknown>;
35
+ };
36
+ }
37
+ /** `release_item` — account resource with other employment still contributing
38
+ * ⇒ `contributors_not_empty`. */
39
+ export interface PeopleReleaseItemParams {
40
+ itemRef: string;
41
+ }
42
+ /** `resolve_binding` — 4-outcome rehire resolution, identity only
43
+ * (entitlements flow through the new employment's Joiner pipeline, PM 9.5). */
44
+ export interface PeopleResolveBindingParams {
45
+ canonicalPersonRef: string;
46
+ providerRef: string;
47
+ }
48
+ export type PeopleResolveBindingOutcome = 'existing_active' | 'reactivate_identity' | 'new_binding' | 'no_account';
49
+ /** `mark_deleted_verified` — eligible ≠ deleted ⇒ `verification_required`. */
50
+ export interface PeopleMarkDeletedVerifiedParams {
51
+ bindingRef: string;
52
+ verified: true;
53
+ providerOperationReference?: string;
54
+ }
55
+ /** `accept_exception` (drift) — critical severity requires the emergency gate. */
56
+ export interface PeopleAcceptExceptionParams {
57
+ findingRef: string;
58
+ exception: {
59
+ owner: string;
60
+ approvedBy: string;
61
+ effectiveFrom: string;
62
+ expiresAt: string;
63
+ };
64
+ emergency: boolean;
65
+ }
66
+ export interface PeopleAcceptExceptionOutput {
67
+ success: boolean;
68
+ expiresAt: string;
69
+ }
70
+ /** `escalate` carries an optional target. */
71
+ export interface PeopleEscalateParams {
72
+ escalatedTo?: string;
73
+ }
74
+ /** `build_plan` / `amend_plan` — dates belong to FEAT-004, never invented here. */
75
+ export interface PeopleBuildPlanParams {
76
+ employmentRef: string;
77
+ endingPlanRef: string;
78
+ endingFacts: {
79
+ lwd: string;
80
+ endEffectiveAt: string;
81
+ timezone: string;
82
+ };
83
+ policyRef?: string;
84
+ policyVersion?: string;
85
+ }
86
+ export interface PeopleBuildPlanOutput {
87
+ plan: string;
88
+ planVersion: number;
89
+ }
90
+ export interface IdentityActions {
91
+ activateProvider(providerUuid: string, opts?: PeopleActionOpts): Promise<ActionResponse>;
92
+ disableProvider(providerUuid: string, opts?: PeopleActionOpts): Promise<ActionResponse>;
93
+ discardProvider(providerUuid: string, opts?: PeopleActionOpts): Promise<ActionResponse>;
94
+ probe(providerUuid: string, opts?: PeopleActionOpts): Promise<ActionResponse>;
95
+ resolveDesired(params: PeopleResolveDesiredParams, opts?: PeopleActionOpts): Promise<ActionResponse>;
96
+ executeItem(itemUuid: string, opts?: PeopleActionOpts): Promise<ActionResponse>;
97
+ activateItem(itemUuid: string, opts?: PeopleActionOpts): Promise<ActionResponse>;
98
+ retryItem(itemUuid: string, opts?: PeopleActionOpts): Promise<ActionResponse>;
99
+ resolveManually(params: PeopleResolveManuallyParams, opts?: PeopleActionOpts): Promise<ActionResponse>;
100
+ releaseItem(params: PeopleReleaseItemParams, opts?: PeopleActionOpts): Promise<ActionResponse>;
101
+ cancelItem(itemUuid: string, opts?: PeopleActionOpts): Promise<ActionResponse>;
102
+ cleanupPrepared(itemUuid: string, opts?: PeopleActionOpts): Promise<ActionResponse>;
103
+ resolveBinding(params: PeopleResolveBindingParams, opts?: PeopleActionOpts): Promise<ActionResponse>;
104
+ markDeletedVerified(params: PeopleMarkDeletedVerifiedParams, opts?: PeopleActionOpts): Promise<ActionResponse>;
105
+ acknowledge(findingUuid: string, opts?: PeopleActionOpts): Promise<ActionResponse>;
106
+ remediate(findingUuid: string, opts?: PeopleActionOpts): Promise<ActionResponse>;
107
+ acceptException(params: PeopleAcceptExceptionParams, opts?: PeopleActionOpts): Promise<ActionResponse>;
108
+ registerIntended(findingUuid: string, opts?: PeopleActionOpts): Promise<ActionResponse>;
109
+ escalate(findingUuid: string, params?: PeopleEscalateParams, opts?: PeopleActionOpts): Promise<ActionResponse>;
110
+ buildPlan(params: PeopleBuildPlanParams, opts?: PeopleActionOpts): Promise<ActionResponse>;
111
+ amendPlan(planUuid: string, params: PeopleBuildPlanParams, opts?: PeopleActionOpts): Promise<ActionResponse>;
112
+ cancelPlan(planUuid: string, opts?: PeopleActionOpts): Promise<ActionResponse>;
113
+ completePlan(planUuid: string, opts?: PeopleActionOpts): Promise<ActionResponse>;
114
+ }
115
+ export declare function buildIdentityActions(deps: InvokeDeps): IdentityActions;
116
+ //# sourceMappingURL=actions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../../src/services/people/identity/actions.ts"],"names":[],"mappings":"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"}