@droz-js/sdk 0.19.29 → 0.19.31

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.
package/src/sdks/ai.d.ts CHANGED
@@ -127,17 +127,530 @@ export type AgentInfo = {
127
127
  name: Scalars['String']['output'];
128
128
  picture?: Maybe<Scalars['String']['output']>;
129
129
  };
130
+ export type AiAgentAuthoringRefInput = {
131
+ agentId: Scalars['ID']['input'];
132
+ id: Scalars['ID']['input'];
133
+ };
134
+ export type AiAgentBudget = {
135
+ /**
136
+ * Teto de gasto da conversa em micro-dolar (1e-6 USD). So vale para chamada com preco conhecido:
137
+ * modelo fora da tabela de preco produz custo desconhecido, nunca zero. Combine com `maxTokens`,
138
+ * que sempre vale.
139
+ */
140
+ maxCostMicroUsd?: Maybe<Scalars['Int']['output']>;
141
+ /**
142
+ * Teto de gasto do agente no periodo (mes calendario UTC), em micro-dolar. Ausente = sem teto de
143
+ * periodo. Independe de `maxCostMicroUsd`, que vale por conversa.
144
+ */
145
+ maxPeriodCostMicroUsd?: Maybe<Scalars['Int']['output']>;
146
+ maxSteps: Scalars['Int']['output'];
147
+ /** Teto de token da conversa inteira. Ausente = sem teto de token. */
148
+ maxTokens?: Maybe<Scalars['Int']['output']>;
149
+ maxToolCalls: Scalars['Int']['output'];
150
+ onExceeded: BudgetExceededAction;
151
+ };
152
+ export type AiAgentBudgetInput = {
153
+ maxCostMicroUsd?: InputMaybe<Scalars['Int']['input']>;
154
+ maxPeriodCostMicroUsd?: InputMaybe<Scalars['Int']['input']>;
155
+ maxSteps: Scalars['Int']['input'];
156
+ maxTokens?: InputMaybe<Scalars['Int']['input']>;
157
+ maxToolCalls: Scalars['Int']['input'];
158
+ onExceeded: BudgetExceededAction;
159
+ };
160
+ export type AiAgentCheckResult = {
161
+ regressions: Array<AiAgentRegression>;
162
+ reports: Array<AiAgentScenarioReport>;
163
+ /** Falso quando um cenário piorou além da tolerância em relação à versão live. */
164
+ safeToPublish: Scalars['Boolean']['output'];
165
+ };
166
+ export type AiAgentCompetingPair = {
167
+ left: Scalars['ID']['output'];
168
+ right: Scalars['ID']['output'];
169
+ /** Similaridade entre as duas descricoes, de 0 a 1. */
170
+ score: Scalars['Number']['output'];
171
+ };
172
+ export type AiAgentConversationMetrics = {
173
+ channel?: Maybe<Scalars['String']['output']>;
174
+ costMicroUsd: Scalars['Number']['output'];
175
+ durationMs: Scalars['Number']['output'];
176
+ lastOutcome: Scalars['String']['output'];
177
+ lastTurnAt: Scalars['Number']['output'];
178
+ sessionId: Scalars['ID']['output'];
179
+ startedAt: Scalars['Number']['output'];
180
+ totalTokens: Scalars['Number']['output'];
181
+ turns: Scalars['Number']['output'];
182
+ };
183
+ export type AiAgentConversationOutcome = {
184
+ agentId: Scalars['ID']['output'];
185
+ agentVersion: Scalars['String']['output'];
186
+ /** Fatos da sessao; chave e valor mascarados quando a politica de retencao pede. */
187
+ collectedData: Scalars['JSON']['output'];
188
+ /** false quando a retencao ja apagou a sessao. */
189
+ collectedDataAvailable: Scalars['Boolean']['output'];
190
+ /** Motivo da parada do ultimo turno, quando houve. */
191
+ haltReason?: Maybe<Scalars['String']['output']>;
192
+ lastTurnAt: Scalars['Number']['output'];
193
+ resolution: Scalars['String']['output'];
194
+ resolutionDefinition: Scalars['String']['output'];
195
+ sessionId: Scalars['ID']['output'];
196
+ startedAt: Scalars['Number']['output'];
197
+ turns: Scalars['Number']['output'];
198
+ };
199
+ /**
200
+ * Como este agente passa o atendimento para uma pessoa.
201
+ *
202
+ * A transicao vive no fluxo do tenant — e a state machine dele que sabe qual estado atende gente —,
203
+ * por isso e configuracao e nao constante da plataforma. Ausente significa que o agente nao passa
204
+ * para ninguem: ele diz que o caso precisa de uma pessoa e usa o comportamento fora de escopo do
205
+ * autor para dizer onde procura-la, em vez de prometer transferencia que nao acontece.
206
+ */
207
+ export type AiAgentHandoff = {
208
+ /** `human` ou `flow`. Ausente = nao declarado: a metrica conta a parte, sem supor destino. */
209
+ target?: Maybe<Scalars['String']['output']>;
210
+ transition: Scalars['String']['output'];
211
+ };
212
+ export type AiAgentHandoffInput = {
213
+ target?: InputMaybe<Scalars['String']['input']>;
214
+ transition: Scalars['String']['input'];
215
+ };
216
+ export type AiAgentIdentity = {
217
+ displayName: Scalars['String']['output'];
218
+ openingMessage?: Maybe<Scalars['String']['output']>;
219
+ outOfScopeBehaviour: Scalars['String']['output'];
220
+ role: Scalars['String']['output'];
221
+ tone: TonePreset;
222
+ toneNotes?: Maybe<Scalars['String']['output']>;
223
+ };
224
+ export type AiAgentIdentityInput = {
225
+ displayName: Scalars['String']['input'];
226
+ openingMessage?: InputMaybe<Scalars['String']['input']>;
227
+ outOfScopeBehaviour: Scalars['String']['input'];
228
+ role: Scalars['String']['input'];
229
+ tone: TonePreset;
230
+ toneNotes?: InputMaybe<Scalars['String']['input']>;
231
+ };
232
+ export type AiAgentKnowledgeBase = {
233
+ id: Scalars['ID']['output'];
234
+ title: Scalars['String']['output'];
235
+ };
236
+ export type AiAgentMetrics = {
237
+ agentId: Scalars['ID']['output'];
238
+ answeredTurns: Scalars['Number']['output'];
239
+ /**
240
+ * Turnos que responderam mesmo com uma conexao falha no meio. E a superficie de risco do guardrail de
241
+ * §4.7 — nao prova resposta inventada, mas e onde ela poderia acontecer.
242
+ */
243
+ answeredWithFailedConnectionTurns: Scalars['Number']['output'];
244
+ avgLlmLatencyMs: Scalars['Number']['output'];
245
+ avgTurnDurationMs: Scalars['Number']['output'];
246
+ /** Turnos cuja resposta foi bloqueada na validacao antes do envio. */
247
+ blockedTurns: Scalars['Number']['output'];
248
+ blocksByCategory: Array<AiAgentMetricsCount>;
249
+ budgetExceededTurns: Scalars['Number']['output'];
250
+ /**
251
+ * Entrada servida pelo cache do proprio provedor: quanto do contexto nao foi pago a preco cheio.
252
+ * Provedor que nao reporta cache vale zero.
253
+ */
254
+ cachedInputTokens: Scalars['Number']['output'];
255
+ /** Turnos respondidos pelo cache, sem chamada ao modelo. E o ganho da otimizacao de §4.9. */
256
+ cachedTurns: Scalars['Number']['output'];
257
+ conversations: Scalars['Number']['output'];
258
+ /**
259
+ * Conversas em que algum turno **pediu** uma pessoa. Pedido, nao confirmacao: o disparo da transicao
260
+ * e best-effort, entao nem toda solicitacao virou transferencia de fato.
261
+ */
262
+ conversationsHandoffRequested: Scalars['Number']['output'];
263
+ /**
264
+ * Nem uma nem outra: parou por prazo, por repeticao, ou ainda esta acontecendo. Existe para nao
265
+ * inflar a resolucao — contar "nao transferiu" como "resolveu" transformaria conversa abandonada
266
+ * em sucesso.
267
+ */
268
+ conversationsInconclusive: Scalars['Number']['output'];
269
+ /** Conversas resolvidas sob a regra declarada em `resolutionDefinition`. */
270
+ conversationsResolved: Scalars['Number']['output'];
271
+ /** Gasto da janela em micro-dolar (1e-6 USD), inteiro. */
272
+ costMicroUsd: Scalars['Number']['output'];
273
+ /**
274
+ * Gasto da janela dividido pelas conversas resolvidas, em micro-dolar. **Ausente** quando nenhuma
275
+ * conversa resolveu no periodo — dividir por zero nao vira zero.
276
+ */
277
+ costMicroUsdPerResolvedConversation?: Maybe<Scalars['Number']['output']>;
278
+ /**
279
+ * Escalonou, mas a transicao nao tem destino declarado. Fica a parte de proposito: somar a um dos
280
+ * dois lados seria supor para onde o fluxo do tenant leva.
281
+ */
282
+ escalatedTargetUndeclared: Scalars['Number']['output'];
283
+ /** Escalonamentos cujo destino o autor declarou como fluxo. */
284
+ escalatedToFlow: Scalars['Number']['output'];
285
+ /** Escalonamentos cujo destino o autor declarou como pessoa. */
286
+ escalatedToHuman: Scalars['Number']['output'];
287
+ from: Scalars['Number']['output'];
288
+ haltReasons: Array<AiAgentMetricsCount>;
289
+ haltedTurns: Scalars['Number']['output'];
290
+ /**
291
+ * Por que a pessoa foi pedida: `customer_request` quando o consumidor pediu ou o agente concluiu que
292
+ * precisava, `tool_failure`, `provider_unavailable`, `budget_exceeded`, `period_budget_exceeded` ou
293
+ * `unresolved` quando o agente parou sem concluir.
294
+ */
295
+ handoffsByReason: Array<AiAgentMetricsCount>;
296
+ /** Turnos que terminaram pedindo uma pessoa (pedido, nao transferencia). */
297
+ humanRequestedTurns: Scalars['Number']['output'];
298
+ /** Turnos que precisaram de cliente identificado e nao tinham um — a medida do atrito de identificacao. */
299
+ identificationRequiredTurns: Scalars['Number']['output'];
300
+ inputTokens: Scalars['Number']['output'];
301
+ knowledgeEmpty: Scalars['Number']['output'];
302
+ knowledgeRetrieved: Scalars['Number']['output'];
303
+ knowledgeSkipped: Scalars['Number']['output'];
304
+ knowledgeUnavailable: Scalars['Number']['output'];
305
+ llmCalls: Scalars['Number']['output'];
306
+ outputTokens: Scalars['Number']['output'];
307
+ p95TurnDurationMs: Scalars['Number']['output'];
308
+ /** A regra aplicada para contar resolucao, junto do numero, para ele nao ser lido como cada um quiser. */
309
+ resolutionDefinition: Scalars['String']['output'];
310
+ /**
311
+ * Conversas resolvidas sobre o total, em pontos percentuais. **Ausente** quando nao houve conversa na
312
+ * janela — sem dado e zero por cento nao sao a mesma coisa.
313
+ */
314
+ resolutionRate?: Maybe<Scalars['Number']['output']>;
315
+ to: Scalars['Number']['output'];
316
+ toolCalls: Scalars['Number']['output'];
317
+ /** Chamadas de ferramenta que falharam. */
318
+ toolCallsFailed: Scalars['Number']['output'];
319
+ /** Falhas por classe: timeout, upstream, nao configurada, sem identificacao. */
320
+ toolErrorsByClass: Array<AiAgentMetricsCount>;
321
+ /** Falhas por conexao externa, identificada pelo host — responde "qual integracao esta caindo". */
322
+ toolErrorsByConnection: Array<AiAgentMetricsCount>;
323
+ /** Assuntos mais frequentes da janela, escolhidos no conjunto fechado do `can` de cada agente. */
324
+ topTopics: Array<AiAgentMetricsCount>;
325
+ /** As perguntas mais frequentes sem resposta, agrupadas por texto normalizado. */
326
+ topUnansweredQuestions: Array<AiAgentMetricsCount>;
327
+ totalTokens: Scalars['Number']['output'];
328
+ /** true quando o teto de leitura foi atingido: os numeros cobrem parte do periodo. */
329
+ truncated: Scalars['Boolean']['output'];
330
+ turns: Scalars['Number']['output'];
331
+ turnsByModel: Array<AiAgentMetricsCount>;
332
+ /**
333
+ * A regra aplicada para contar turno sem resposta, junto do numero, para ele nao ser lido como cada
334
+ * um quiser. Deterministica: qualidade da resposta nao e medivel aqui.
335
+ */
336
+ unansweredDefinition: Scalars['String']['output'];
337
+ /** Turnos sem resposta satisfatoria sob a regra declarada em `unansweredDefinition`. */
338
+ unansweredTurns: Scalars['Number']['output'];
339
+ /**
340
+ * Turnos com ao menos uma chamada ao modelo sem preco conhecido. Com isto > 0, `costMicroUsd` e
341
+ * **piso**, nao total — nao decidir preco sem olhar este numero.
342
+ */
343
+ unpricedTurns: Scalars['Number']['output'];
344
+ };
345
+ export type AiAgentMetricsCount = {
346
+ count: Scalars['Number']['output'];
347
+ key: Scalars['String']['output'];
348
+ };
349
+ export type AiAgentMetricsInput = {
350
+ agentId: Scalars['ID']['input'];
351
+ channel?: InputMaybe<Scalars['String']['input']>;
352
+ from: Scalars['Number']['input'];
353
+ to: Scalars['Number']['input'];
354
+ };
355
+ /** A mesma janela, sem agente: a listagem quer todos de uma vez. */
356
+ export type AiAgentMetricsWindowInput = {
357
+ channel?: InputMaybe<Scalars['String']['input']>;
358
+ from: Scalars['Number']['input'];
359
+ to: Scalars['Number']['input'];
360
+ };
361
+ export type AiAgentProcedure = {
362
+ contingency: Scalars['String']['output'];
363
+ /** `autonomous` ou `needsApproval`. Ferramenta irreversivel exige `needsApproval`. */
364
+ executionAutonomy: Scalars['String']['output'];
365
+ /** As etapas como o autor instruiria uma pessoa. O texto e a fonte da verdade (§6.2). */
366
+ guidanceSteps: Array<Scalars['String']['output']>;
367
+ id: Scalars['ID']['output'];
368
+ name: Scalars['String']['output'];
369
+ status: Scalars['String']['output'];
370
+ /** Ferramentas que as etapas usam. Declaradas: e o que da para validar sem interpretar o texto. */
371
+ toolIds: Array<Scalars['ID']['output']>;
372
+ updatedAt: Scalars['Number']['output'];
373
+ };
374
+ export type AiAgentRefInput = {
375
+ agentId: Scalars['ID']['input'];
376
+ };
377
+ export type AiAgentRegression = {
378
+ after: Scalars['Float']['output'];
379
+ before: Scalars['Float']['output'];
380
+ scenarioId: Scalars['ID']['output'];
381
+ };
382
+ export type AiAgentRetentionDays = {
383
+ long_term_memory: Scalars['Int']['output'];
384
+ session_state: Scalars['Int']['output'];
385
+ transcript: Scalars['Int']['output'];
386
+ };
387
+ export type AiAgentRetentionDaysInput = {
388
+ long_term_memory: Scalars['Int']['input'];
389
+ session_state: Scalars['Int']['input'];
390
+ transcript: Scalars['Int']['input'];
391
+ };
392
+ export type AiAgentRetentionPolicy = {
393
+ days: AiAgentRetentionDays;
394
+ masksPersonalData: Scalars['Boolean']['output'];
395
+ };
396
+ export type AiAgentRetentionPolicyInput = {
397
+ days: AiAgentRetentionDaysInput;
398
+ masksPersonalData: Scalars['Boolean']['input'];
399
+ };
400
+ export type AiAgentRoutedExample = {
401
+ /** `high`, `medium` ou `low`. */
402
+ confidence: Scalars['String']['output'];
403
+ message: Scalars['String']['output'];
404
+ score: Scalars['Number']['output'];
405
+ /** Ausente quando nenhum caso de uso reconheceu a mensagem. */
406
+ useCaseId?: Maybe<Scalars['ID']['output']>;
407
+ };
408
+ export type AiAgentRoutingPreview = {
409
+ examples: Array<AiAgentRoutedExample>;
410
+ /** Limiar de confianca alta. */
411
+ high: Scalars['Number']['output'];
412
+ /** Limiar de confianca media; abaixo dele a previa nao aponta caso de uso. */
413
+ medium: Scalars['Number']['output'];
414
+ };
415
+ export type AiAgentRoutingPreviewInput = {
416
+ agentId: Scalars['ID']['input'];
417
+ /** Mensagens a testar. Vazio cai em `subject`; sem os dois, previa vazia e nao erro. */
418
+ examples: Array<Scalars['String']['input']>;
419
+ /** Descricao do assunto: as mensagens sao geradas a partir dela (§5.4). Ignorada se `examples` vier. */
420
+ subject?: InputMaybe<Scalars['String']['input']>;
421
+ };
422
+ export type AiAgentScenario = {
423
+ description: Scalars['String']['output'];
424
+ expectations: Array<Scalars['JSON']['output']>;
425
+ scenarioId: Scalars['ID']['output'];
426
+ /** O que o cliente diz, em ordem. */
427
+ turns: Array<Scalars['String']['output']>;
428
+ };
429
+ export type AiAgentScenarioReport = {
430
+ passed: Scalars['Int']['output'];
431
+ /** Fração de execuções em que todas as expectativas valeram, 0..1. */
432
+ rate: Scalars['Float']['output'];
433
+ runs: Scalars['Int']['output'];
434
+ scenarioId: Scalars['ID']['output'];
435
+ /** Um item por turno do cenário, na ordem, agregado entre as execuções. */
436
+ turns: Array<AiAgentScenarioTurn>;
437
+ };
438
+ export type AiAgentScenarioTurn = {
439
+ /** Execuções em que o agente respondeu neste turno. */
440
+ answered: Scalars['Int']['output'];
441
+ /** Categorias que bloquearam a resposta deste turno, e em quantas execuções. */
442
+ blockCategories: Array<AiAgentMetricsCount>;
443
+ /** Execuções em que a resposta deste turno foi bloqueada antes do envio. */
444
+ blocked: Scalars['Int']['output'];
445
+ /** Execuções em que a resposta deste turno se apoiou em conhecimento ou ferramenta. */
446
+ grounded: Scalars['Int']['output'];
447
+ /** Execuções que chegaram a este turno. */
448
+ runs: Scalars['Int']['output'];
449
+ /** Ferramentas chamadas neste turno, e em quantas execuções. */
450
+ toolNames: Array<AiAgentMetricsCount>;
451
+ /** 1 para o primeiro turno do cenário. */
452
+ turn: Scalars['Int']['output'];
453
+ };
454
+ export type AiAgentSpec = {
455
+ budget: AiAgentBudget;
456
+ /** One natural-language permission per item. */
457
+ can: Array<Scalars['String']['output']>;
458
+ /** Restrictions. On conflict these win over `can`, without exception. */
459
+ cannot: Array<Scalars['String']['output']>;
460
+ /** Canais em que o agente atende. Ausente = ainda nao vinculado; declarado vazio e erro. */
461
+ channels?: Maybe<Array<Scalars['String']['output']>>;
462
+ handoff?: Maybe<AiAgentHandoff>;
463
+ identity: AiAgentIdentity;
464
+ /**
465
+ * §4.8: bases do Droz Base vinculadas — ids de **space**, nao de credencial. A consulta e recortada
466
+ * por elas; sem recorte o agente varreria o acervo inteiro do tenant.
467
+ */
468
+ knowledgeBaseIds: Array<Scalars['ID']['output']>;
469
+ /** `inform_limitation` (default) ou `general_knowledge`; ausente vale o mais restritivo. */
470
+ knowledgeFallback?: Maybe<Scalars['String']['output']>;
471
+ toolIds: Array<Scalars['ID']['output']>;
472
+ };
473
+ export type AiAgentSpecInput = {
474
+ budget: AiAgentBudgetInput;
475
+ can: Array<Scalars['String']['input']>;
476
+ cannot: Array<Scalars['String']['input']>;
477
+ channels?: InputMaybe<Array<Scalars['String']['input']>>;
478
+ handoff?: InputMaybe<AiAgentHandoffInput>;
479
+ identity: AiAgentIdentityInput;
480
+ /**
481
+ * §4.8: bases do Droz Base vinculadas — ids de **space**, nao de credencial. A consulta e recortada
482
+ * por elas; sem recorte o agente varreria o acervo inteiro do tenant.
483
+ */
484
+ knowledgeBaseIds: Array<Scalars['ID']['input']>;
485
+ /** `inform_limitation` (default) ou `general_knowledge`; ausente vale o mais restritivo. */
486
+ knowledgeFallback?: InputMaybe<Scalars['String']['input']>;
487
+ toolIds: Array<Scalars['ID']['input']>;
488
+ };
489
+ export type AiAgentSummary = {
490
+ agentId: Scalars['ID']['output'];
491
+ /** Canais da versao no ar; sem versao no ar, os da mais recente. Vazio quando nenhuma declarou canal. */
492
+ channels: Array<Scalars['String']['output']>;
493
+ /** Absent until a version is published. An agent with no live version answers nobody. */
494
+ liveVersion?: Maybe<Scalars['Int']['output']>;
495
+ name: Scalars['String']['output'];
496
+ /** Acoes esperando aprovacao humana (§5.5.3). Zero tambem quando a fila nao pode ser lida. */
497
+ queuedApprovals: Scalars['Number']['output'];
498
+ /**
499
+ * `draft` (nunca publicado), `live` (no ar) ou `paused` (ja esteve no ar e foi tirado). `liveVersion`
500
+ * sozinho nao distingue quem nunca publicou de quem foi pausado.
501
+ */
502
+ status: Scalars['String']['output'];
503
+ /** Momento da versao mais recente, no ar ou nao — o "ultima alteracao" da listagem. */
504
+ updatedAt: Scalars['Number']['output'];
505
+ };
506
+ export type AiAgentTool = {
507
+ /** `pre_approved` (padrao) ou `human_approval`. */
508
+ approval?: Maybe<Scalars['String']['output']>;
509
+ availability: ToolAvailability;
510
+ /** `url` (default): a plataforma impoe o recorte via `{customerId}` na URL; `credential`: a credencial ja e do cliente (declarado, nunca inferido). */
511
+ customerScope?: Maybe<Scalars['String']['output']>;
512
+ description: Scalars['String']['output'];
513
+ effect: ToolEffect;
514
+ name: Scalars['String']['output'];
515
+ /** `{kind: message, message?}` (default), `{kind: retry, attempts, message?}` ou `{kind: handoff}`. */
516
+ onFailure?: Maybe<Scalars['JSON']['output']>;
517
+ parameters: Array<AiAgentToolParameter>;
518
+ requiresAuthenticatedCustomer: Scalars['Boolean']['output'];
519
+ /** Fields the agent is allowed to see. Anything not listed never reaches the model. */
520
+ returns: Array<Scalars['String']['output']>;
521
+ toolId: Scalars['ID']['output'];
522
+ };
523
+ export type AiAgentToolParameter = {
524
+ description: Scalars['String']['output'];
525
+ grounding: ParameterGrounding;
526
+ name: Scalars['String']['output'];
527
+ required: Scalars['Boolean']['output'];
528
+ type: ToolParameterType;
529
+ };
530
+ export type AiAgentToolParameterInput = {
531
+ description: Scalars['String']['input'];
532
+ groundedBy?: InputMaybe<Array<Scalars['String']['input']>>;
533
+ grounding?: InputMaybe<ParameterGrounding>;
534
+ name: Scalars['String']['input'];
535
+ required: Scalars['Boolean']['input'];
536
+ type: ToolParameterType;
537
+ };
538
+ export type AiAgentToolSpecInput = {
539
+ /** `pre_approved` (padrao) ou `human_approval`. */
540
+ approval?: InputMaybe<Scalars['String']['input']>;
541
+ availability: ToolAvailability;
542
+ credentialRef?: InputMaybe<CredentialRefInput>;
543
+ /** `url` (default): a plataforma impoe o recorte via `{customerId}` na URL; `credential`: a credencial ja e do cliente (declarado, nunca inferido). */
544
+ customerScope?: InputMaybe<Scalars['String']['input']>;
545
+ description: Scalars['String']['input'];
546
+ effect: ToolEffect;
547
+ idempotent: Scalars['Boolean']['input'];
548
+ name: Scalars['String']['input'];
549
+ /** `{kind: message, message?}` (default), `{kind: retry, attempts, message?}` ou `{kind: handoff}`. */
550
+ onFailure?: InputMaybe<Scalars['JSON']['input']>;
551
+ parameters: Array<AiAgentToolParameterInput>;
552
+ requiresAuthenticatedCustomer: Scalars['Boolean']['input'];
553
+ /** Campos que o agente pode ver. O que não estiver aqui nunca chega ao modelo. */
554
+ returns: Array<Scalars['String']['input']>;
555
+ reversible: Scalars['Boolean']['input'];
556
+ toolId: Scalars['ID']['input'];
557
+ };
558
+ export type AiAgentTrace = {
559
+ agentId: Scalars['ID']['output'];
560
+ agentVersion: Scalars['String']['output'];
561
+ answer: Scalars['String']['output'];
562
+ /** Presente so quando o turno parou por limite; ausente quando respondeu. */
563
+ haltReason?: Maybe<Scalars['String']['output']>;
564
+ /** O turno tentou usar ferramenta que exige cliente identificado, sem ter um. */
565
+ identificationRequired?: Maybe<Scalars['Boolean']['output']>;
566
+ input: Scalars['String']['output'];
567
+ knowledgeOrigins: Array<Scalars['String']['output']>;
568
+ /** Versao da regra mestra da plataforma vigente no turno — atribui a conversa a regra sob a qual ela rodou. */
569
+ masterRuleVersion?: Maybe<Scalars['Int']['output']>;
570
+ outcome: Scalars['String']['output'];
571
+ promptBuilderVersion: Scalars['Int']['output'];
572
+ /** Identifica o prompt que gerou este turno sem guardar o prompt inteiro. */
573
+ promptFingerprint: Scalars['String']['output'];
574
+ sessionId: Scalars['ID']['output'];
575
+ startedAt: Scalars['Float']['output'];
576
+ steps: Scalars['Int']['output'];
577
+ toolCalls: Array<AiAgentTracedToolCall>;
578
+ turn: Scalars['Int']['output'];
579
+ };
580
+ export type AiAgentTracedToolCall = {
581
+ /** O sistema externo, pelo host. Sem path nem query, que carregam parametro do cliente. */
582
+ connection?: Maybe<Scalars['String']['output']>;
583
+ /** `unauthenticated`, `not_configured`, `timeout` ou `upstream`. */
584
+ errorClass?: Maybe<Scalars['String']['output']>;
585
+ name: Scalars['String']['output'];
586
+ /**
587
+ * Se a chamada deu certo. Ausente em chamada gravada antes do desfecho estruturado existir — e
588
+ * ausente nao significa falha.
589
+ */
590
+ ok?: Maybe<Scalars['Boolean']['output']>;
591
+ /** Ja restrito aos campos que a ferramenta declarou em `returns`. */
592
+ result: Scalars['String']['output'];
593
+ toolId: Scalars['ID']['output'];
594
+ };
595
+ export type AiAgentUseCase = {
596
+ id: Scalars['ID']['output'];
597
+ name: Scalars['String']['output'];
598
+ procedureId?: Maybe<Scalars['ID']['output']>;
599
+ status: Scalars['String']['output'];
600
+ /**
601
+ * NAO e documentacao: e o texto que o roteador le para classificar a mensagem (§6.1). Descricao vaga
602
+ * produz roteamento ruim.
603
+ */
604
+ subjectDescription: Scalars['String']['output'];
605
+ updatedAt: Scalars['Number']['output'];
606
+ };
607
+ export type AiAgentUseCaseOverlap = {
608
+ /** Do par mais parecido para o menos: e a ordem em que o autor deve olhar. */
609
+ pairs: Array<AiAgentCompetingPair>;
610
+ /** O limiar aplicado, publicado junto do resultado para o aviso nao ser lido como cada um quiser. */
611
+ threshold: Scalars['Number']['output'];
612
+ };
613
+ export type AiAgentVersion = {
614
+ agentId: Scalars['ID']['output'];
615
+ createdAt: Scalars['DateTime']['output'];
616
+ spec: AiAgentSpec;
617
+ status: AiAgentVersionStatus;
618
+ version: Scalars['Int']['output'];
619
+ };
620
+ export type AiAgentVersionRefInput = {
621
+ agentId: Scalars['ID']['input'];
622
+ version: Scalars['Int']['input'];
623
+ };
624
+ export declare enum AiAgentVersionStatus {
625
+ Draft = "draft",
626
+ Live = "live",
627
+ Published = "published",
628
+ Removed = "removed"
629
+ }
130
630
  export declare enum AppInstanceStatus {
131
631
  Active = "Active",
132
632
  Failing = "Failing",
133
633
  Inactive = "Inactive"
134
634
  }
635
+ export declare enum BudgetExceededAction {
636
+ DegradeModel = "degrade_model",
637
+ EndWithNotice = "end_with_notice",
638
+ TransferToHuman = "transfer_to_human"
639
+ }
135
640
  export declare enum Can {
136
641
  Manage = "manage",
137
642
  Read = "read",
138
643
  Remove = "remove",
139
644
  Write = "write"
140
645
  }
646
+ export type CheckAiAgentVersionInput = {
647
+ agentId: Scalars['ID']['input'];
648
+ /** De 2 a 20. Uma execução só não prova nada num sistema probabilístico. */
649
+ runsPerScenario?: InputMaybe<Scalars['Int']['input']>;
650
+ /** Cenários a rodar. Ausente roda todos; o resultado cobre só os cenários rodados. */
651
+ scenarioIds?: InputMaybe<Array<Scalars['ID']['input']>>;
652
+ version: Scalars['Int']['input'];
653
+ };
141
654
  export type CreateNlpInstanceInput = {
142
655
  name: Scalars['String']['input'];
143
656
  options: Array<NlpOptionInput>;
@@ -147,6 +660,17 @@ export type CreateQnAInstanceInput = {
147
660
  name: Scalars['String']['input'];
148
661
  tryToReplyOnTransition?: InputMaybe<Scalars['Boolean']['input']>;
149
662
  };
663
+ export type CredentialRefInput = {
664
+ /** Nome do parâmetro no cofre do tenant. O valor nunca é armazenado aqui. */
665
+ name: Scalars['String']['input'];
666
+ vault: Scalars['String']['input'];
667
+ };
668
+ export type DraftAiAgentInput = {
669
+ /** Omitted for a brand new agent; supplied to draft the next version of an existing one. */
670
+ agentId?: InputMaybe<Scalars['ID']['input']>;
671
+ name: Scalars['String']['input'];
672
+ spec: AiAgentSpecInput;
673
+ };
150
674
  export type ExtractImageMetadataInput = {
151
675
  imageUrl: Scalars['String']['input'];
152
676
  metadataRequirements: Scalars['JSONObject']['input'];
@@ -166,30 +690,98 @@ export type I18nTextInput = {
166
690
  value: Scalars['String']['input'];
167
691
  };
168
692
  export type Mutation = {
693
+ /** Roda os cenários contra uma versão candidata e registra o resultado. Custa chamadas de modelo. */
694
+ checkAiAgentVersion?: Maybe<AiAgentCheckResult>;
169
695
  createNlpInstance?: Maybe<NlpInstance>;
170
696
  createQnAInstance?: Maybe<QnAInstance>;
697
+ draftAiAgent?: Maybe<AiAgentVersion>;
171
698
  extractImageMetadata: ExtractImageMetadataResult;
699
+ publishAiAgentVersion: Array<AiAgentVersion>;
700
+ registerAiAgentTool?: Maybe<AiAgentTool>;
701
+ /** Apaga o agente e a autoria dele. Agente no ar precisa ser pausado antes. */
702
+ removeAiAgent: Scalars['Boolean']['output'];
703
+ removeAiAgentProcedure: Scalars['Boolean']['output'];
704
+ removeAiAgentUseCase: Scalars['Boolean']['output'];
705
+ removeAiAgentVersion: Array<AiAgentVersion>;
172
706
  removeNlpInstance?: Maybe<NlpInstance>;
173
707
  removeQnAInstance?: Maybe<QnAInstance>;
708
+ /** Decide uma acao que ficou esperando aprovacao humana (§5.5.3). Decidir de novo nao repete a acao. */
709
+ resolveAiAgentApproval: Scalars['Boolean']['output'];
710
+ rollbackAiAgentVersion: Array<AiAgentVersion>;
711
+ saveAiAgentProcedure: AiAgentProcedure;
712
+ saveAiAgentScenario?: Maybe<AiAgentScenario>;
713
+ saveAiAgentUseCase: AiAgentUseCase;
714
+ setAiAgentRetentionPolicy: AiAgentRetentionPolicy;
715
+ /** Tira a versao do ar sem apagar (pausar). Publicar de novo e o caminho de volta. */
716
+ unpublishAiAgentVersion: Array<AiAgentVersion>;
717
+ unregisterAiAgentTool?: Maybe<Scalars['Boolean']['output']>;
174
718
  updateNlpInstance?: Maybe<NlpInstance>;
175
719
  updateQnAInstance?: Maybe<QnAInstance>;
176
720
  version?: Maybe<Scalars['String']['output']>;
177
721
  };
722
+ export type MutationCheckAiAgentVersionArgs = {
723
+ input: CheckAiAgentVersionInput;
724
+ };
178
725
  export type MutationCreateNlpInstanceArgs = {
179
726
  input: CreateNlpInstanceInput;
180
727
  };
181
728
  export type MutationCreateQnAInstanceArgs = {
182
729
  input: CreateQnAInstanceInput;
183
730
  };
731
+ export type MutationDraftAiAgentArgs = {
732
+ input: DraftAiAgentInput;
733
+ };
184
734
  export type MutationExtractImageMetadataArgs = {
185
735
  input: ExtractImageMetadataInput;
186
736
  };
737
+ export type MutationPublishAiAgentVersionArgs = {
738
+ input: AiAgentVersionRefInput;
739
+ };
740
+ export type MutationRegisterAiAgentToolArgs = {
741
+ input: RegisterAiAgentToolInput;
742
+ };
743
+ export type MutationRemoveAiAgentArgs = {
744
+ input: AiAgentRefInput;
745
+ };
746
+ export type MutationRemoveAiAgentProcedureArgs = {
747
+ input: AiAgentAuthoringRefInput;
748
+ };
749
+ export type MutationRemoveAiAgentUseCaseArgs = {
750
+ input: AiAgentAuthoringRefInput;
751
+ };
752
+ export type MutationRemoveAiAgentVersionArgs = {
753
+ input: AiAgentVersionRefInput;
754
+ };
187
755
  export type MutationRemoveNlpInstanceArgs = {
188
756
  input: RemoveNlpInstanceInput;
189
757
  };
190
758
  export type MutationRemoveQnAInstanceArgs = {
191
759
  input: RemoveQnAInstanceInput;
192
760
  };
761
+ export type MutationResolveAiAgentApprovalArgs = {
762
+ input: ResolveAiAgentApprovalInput;
763
+ };
764
+ export type MutationRollbackAiAgentVersionArgs = {
765
+ input: AiAgentVersionRefInput;
766
+ };
767
+ export type MutationSaveAiAgentProcedureArgs = {
768
+ input: SaveAiAgentProcedureInput;
769
+ };
770
+ export type MutationSaveAiAgentScenarioArgs = {
771
+ input: SaveAiAgentScenarioInput;
772
+ };
773
+ export type MutationSaveAiAgentUseCaseArgs = {
774
+ input: SaveAiAgentUseCaseInput;
775
+ };
776
+ export type MutationSetAiAgentRetentionPolicyArgs = {
777
+ input: AiAgentRetentionPolicyInput;
778
+ };
779
+ export type MutationUnpublishAiAgentVersionArgs = {
780
+ input: AiAgentVersionRefInput;
781
+ };
782
+ export type MutationUnregisterAiAgentToolArgs = {
783
+ input: UnregisterAiAgentToolInput;
784
+ };
193
785
  export type MutationUpdateNlpInstanceArgs = {
194
786
  input: UpdateNlpInstanceInput;
195
787
  };
@@ -234,6 +826,10 @@ export type PageInfo = {
234
826
  hasNext: Scalars['Boolean']['output'];
235
827
  next?: Maybe<Scalars['Base64']['output']>;
236
828
  };
829
+ export declare enum ParameterGrounding {
830
+ Free = "free",
831
+ Required = "required"
832
+ }
237
833
  export type QnAInstance = {
238
834
  createdAt: Scalars['DateTime']['output'];
239
835
  credentialsId: Scalars['ID']['output'];
@@ -244,22 +840,90 @@ export type QnAInstance = {
244
840
  updatedAt: Scalars['DateTime']['output'];
245
841
  };
246
842
  export type Query = {
843
+ aiAgentConversationMetrics: Array<AiAgentConversationMetrics>;
844
+ aiAgentConversationOutcome?: Maybe<AiAgentConversationOutcome>;
845
+ /**
846
+ * §4.8: as bases do Droz Base do tenant. A chamada e entre services, com App Token — nao ha
847
+ * credencial de cliente. O recorte do agente e a selecao do autor em `knowledgeBaseIds`.
848
+ */
849
+ aiAgentKnowledgeBases: Array<AiAgentKnowledgeBase>;
850
+ aiAgentMetrics: AiAgentMetrics;
851
+ /** As metricas da janela para todos os agentes, numa ida so. Agente sem rastro vem com zeros. */
852
+ aiAgentMetricsByAgent: Array<AiAgentMetrics>;
853
+ /**
854
+ * A politica de retencao em vigor para o tenant, com os padroes aplicados quando ele nao
855
+ * configurou a propria. Existe para a politica ser verificavel de fora, nao so estar escrita.
856
+ */
857
+ aiAgentRetentionPolicy: AiAgentRetentionPolicy;
858
+ /** Onde cada mensagem de exemplo cairia (§5.4). Os limiares saem no resultado: `medium` sem o limiar nao diz nada. */
859
+ aiAgentRoutingPreview: AiAgentRoutingPreview;
860
+ /**
861
+ * Os turnos de um atendimento, do primeiro ao ultimo. E o que responde "o que aconteceu nesta
862
+ * conversa" sem depender de ler o DynamoDB por fora.
863
+ */
864
+ aiAgentTrace: Array<AiAgentTrace>;
865
+ /**
866
+ * Casos de uso cujas descricoes competem no roteador (§6.1). Aviso de autoria, nao bloqueio: descricoes
867
+ * parecidas podem ser intencionais.
868
+ */
869
+ aiAgentUseCaseOverlap: AiAgentUseCaseOverlap;
247
870
  app?: Maybe<Scalars['DRN']['output']>;
248
871
  getHttpEndpoint?: Maybe<Scalars['String']['output']>;
249
872
  getNlpInstance?: Maybe<NlpInstance>;
250
873
  getQnAInstance?: Maybe<QnAInstance>;
874
+ /** Os procedimentos do agente (§6.2): o plano em linguagem natural. */
875
+ listAiAgentProcedures: Array<AiAgentProcedure>;
876
+ listAiAgentScenarios: Array<AiAgentScenario>;
877
+ listAiAgentTools: Array<AiAgentTool>;
878
+ /** Os casos de uso do agente (§6.1): os motivos de contato. */
879
+ listAiAgentUseCases: Array<AiAgentUseCase>;
880
+ listAiAgentVersions: Array<AiAgentVersion>;
881
+ listAiAgents: Array<AiAgentSummary>;
251
882
  listNlpInstances: Array<NlpInstance>;
252
883
  listQnAInstances: Array<QnAInstance>;
253
884
  testNlpInstance?: Maybe<TestNlpInstanceResult>;
254
885
  testQnAInstance?: Maybe<TestQnAInstanceResult>;
255
886
  version?: Maybe<Scalars['String']['output']>;
256
887
  };
888
+ export type QueryAiAgentConversationMetricsArgs = {
889
+ input: AiAgentMetricsInput;
890
+ };
891
+ export type QueryAiAgentConversationOutcomeArgs = {
892
+ sessionId: Scalars['ID']['input'];
893
+ };
894
+ export type QueryAiAgentMetricsArgs = {
895
+ input: AiAgentMetricsInput;
896
+ };
897
+ export type QueryAiAgentMetricsByAgentArgs = {
898
+ input: AiAgentMetricsWindowInput;
899
+ };
900
+ export type QueryAiAgentRoutingPreviewArgs = {
901
+ input: AiAgentRoutingPreviewInput;
902
+ };
903
+ export type QueryAiAgentTraceArgs = {
904
+ sessionId: Scalars['ID']['input'];
905
+ };
906
+ export type QueryAiAgentUseCaseOverlapArgs = {
907
+ agentId: Scalars['ID']['input'];
908
+ };
257
909
  export type QueryGetNlpInstanceArgs = {
258
910
  id: Scalars['ID']['input'];
259
911
  };
260
912
  export type QueryGetQnAInstanceArgs = {
261
913
  id: Scalars['ID']['input'];
262
914
  };
915
+ export type QueryListAiAgentProceduresArgs = {
916
+ agentId: Scalars['ID']['input'];
917
+ };
918
+ export type QueryListAiAgentScenariosArgs = {
919
+ agentId: Scalars['ID']['input'];
920
+ };
921
+ export type QueryListAiAgentUseCasesArgs = {
922
+ agentId: Scalars['ID']['input'];
923
+ };
924
+ export type QueryListAiAgentVersionsArgs = {
925
+ agentId: Scalars['ID']['input'];
926
+ };
263
927
  export type QueryTestNlpInstanceArgs = {
264
928
  id: Scalars['ID']['input'];
265
929
  sample: Scalars['String']['input'];
@@ -269,12 +933,59 @@ export type QueryTestQnAInstanceArgs = {
269
933
  id: Scalars['ID']['input'];
270
934
  input: Scalars['String']['input'];
271
935
  };
936
+ export type RegisterAiAgentToolInput = {
937
+ method: Scalars['String']['input'];
938
+ spec: AiAgentToolSpecInput;
939
+ /** Pode conter {param} para parâmetros declarados e {customerId}. Precisa ser https e público. */
940
+ url: Scalars['String']['input'];
941
+ };
272
942
  export type RemoveNlpInstanceInput = {
273
943
  id: Scalars['ID']['input'];
274
944
  };
275
945
  export type RemoveQnAInstanceInput = {
276
946
  id: Scalars['ID']['input'];
277
947
  };
948
+ export type ResolveAiAgentApprovalInput = {
949
+ agentId: Scalars['ID']['input'];
950
+ decidedBy: Scalars['String']['input'];
951
+ /** `approved` executa a acao guardada; `rejected` avisa o consumidor e nao executa nada. */
952
+ decision: Scalars['String']['input'];
953
+ /** Identifica a pendencia junto da sessao: e o momento em que a acao foi enfileirada. */
954
+ requestedAt: Scalars['Number']['input'];
955
+ sessionId: Scalars['ID']['input'];
956
+ };
957
+ export type SaveAiAgentProcedureInput = {
958
+ agentId: Scalars['ID']['input'];
959
+ contingency: Scalars['String']['input'];
960
+ executionAutonomy: Scalars['String']['input'];
961
+ guidanceSteps: Array<Scalars['String']['input']>;
962
+ id: Scalars['ID']['input'];
963
+ name: Scalars['String']['input'];
964
+ status: Scalars['String']['input'];
965
+ toolIds: Array<Scalars['ID']['input']>;
966
+ };
967
+ export type SaveAiAgentScenarioInput = {
968
+ agentId: Scalars['ID']['input'];
969
+ description: Scalars['String']['input'];
970
+ /**
971
+ * Expectativas de comportamento, uma por objeto, cada uma com `kind`. `tool_called` aceita
972
+ * `toolName` e `withArgs`; `tool_not_called` aceita `toolName`; `blocked_by_rule` aceita `category`
973
+ * para exigir o motivo; `stopped_for` aceita `reason`; `answer_omits` exige `terms`, e vale quando
974
+ * nenhum termo aparece em nenhuma resposta da execucao, sem acento e sem caixa. `transferred`,
975
+ * `not_transferred` e `answer_grounded` nao levam campo.
976
+ */
977
+ expectations: Array<Scalars['JSON']['input']>;
978
+ scenarioId: Scalars['ID']['input'];
979
+ turns: Array<Scalars['String']['input']>;
980
+ };
981
+ export type SaveAiAgentUseCaseInput = {
982
+ agentId: Scalars['ID']['input'];
983
+ id: Scalars['ID']['input'];
984
+ name: Scalars['String']['input'];
985
+ procedureId?: InputMaybe<Scalars['ID']['input']>;
986
+ status: Scalars['String']['input'];
987
+ subjectDescription: Scalars['String']['input'];
988
+ };
278
989
  export type SearchResultsFacet = {
279
990
  name: Scalars['String']['output'];
280
991
  stats?: Maybe<SearchResultsFacetStats>;
@@ -342,7 +1053,39 @@ export type TokenUsage = {
342
1053
  prompt?: Maybe<Scalars['Int']['output']>;
343
1054
  total?: Maybe<Scalars['Int']['output']>;
344
1055
  };
1056
+ export declare enum TonePreset {
1057
+ Cordial = "cordial",
1058
+ Descontraido = "descontraido",
1059
+ Direto = "direto",
1060
+ Formal = "formal",
1061
+ Tecnico = "tecnico"
1062
+ }
1063
+ export declare enum ToolAvailability {
1064
+ Available = "available",
1065
+ Unavailable = "unavailable"
1066
+ }
1067
+ export declare enum ToolEffect {
1068
+ Read = "read",
1069
+ Write = "write"
1070
+ }
1071
+ export declare enum ToolParameterType {
1072
+ Boolean = "boolean",
1073
+ Number = "number",
1074
+ String = "string"
1075
+ }
345
1076
  export declare enum Typenames {
1077
+ AiAgentAnswerCache = "AiAgentAnswerCache",
1078
+ AiAgentApproval = "AiAgentApproval",
1079
+ AiAgentEvalReport = "AiAgentEvalReport",
1080
+ AiAgentProcedure = "AiAgentProcedure",
1081
+ AiAgentRetentionPolicy = "AiAgentRetentionPolicy",
1082
+ AiAgentScenario = "AiAgentScenario",
1083
+ AiAgentSession = "AiAgentSession",
1084
+ AiAgentSpend = "AiAgentSpend",
1085
+ AiAgentTool = "AiAgentTool",
1086
+ AiAgentTrace = "AiAgentTrace",
1087
+ AiAgentUseCase = "AiAgentUseCase",
1088
+ AiAgentVersion = "AiAgentVersion",
346
1089
  Any = "Any",
347
1090
  GraphqlConnections = "GraphqlConnections",
348
1091
  GraphqlSubscriptions = "GraphqlSubscriptions",
@@ -350,6 +1093,9 @@ export declare enum Typenames {
350
1093
  NlpEmbeddings = "NlpEmbeddings",
351
1094
  QnA = "QnA"
352
1095
  }
1096
+ export type UnregisterAiAgentToolInput = {
1097
+ toolId: Scalars['ID']['input'];
1098
+ };
353
1099
  export type UpdateNlpInstanceInput = {
354
1100
  id: Scalars['ID']['input'];
355
1101
  name?: InputMaybe<Scalars['String']['input']>;
@@ -361,6 +1107,229 @@ export type UpdateQnAInstanceInput = {
361
1107
  name?: InputMaybe<Scalars['String']['input']>;
362
1108
  tryToReplyOnTransition?: InputMaybe<Scalars['Boolean']['input']>;
363
1109
  };
1110
+ export type AiAgentSummaryFragment = Pick<AiAgentSummary, 'agentId' | 'name' | 'liveVersion' | 'channels' | 'updatedAt' | 'queuedApprovals' | 'status'>;
1111
+ export type AiAgentVersionFragment = Pick<AiAgentVersion, 'agentId' | 'version' | 'status' | 'createdAt'>;
1112
+ export type AiAgentSpecFragment = (Pick<AiAgentSpec, 'can' | 'cannot' | 'knowledgeBaseIds' | 'knowledgeFallback' | 'toolIds' | 'channels'> & {
1113
+ identity: Pick<AiAgentIdentity, 'displayName' | 'role' | 'tone' | 'toneNotes' | 'openingMessage' | 'outOfScopeBehaviour'>;
1114
+ budget: Pick<AiAgentBudget, 'maxSteps' | 'maxToolCalls' | 'maxTokens' | 'maxCostMicroUsd' | 'maxPeriodCostMicroUsd' | 'onExceeded'>;
1115
+ handoff?: Maybe<Pick<AiAgentHandoff, 'transition' | 'target'>>;
1116
+ });
1117
+ export type AiAgentVersionWithSpecFragment = (Pick<AiAgentVersion, 'agentId' | 'version' | 'status' | 'createdAt'> & {
1118
+ spec: AiAgentSpecFragment;
1119
+ });
1120
+ export type AiAgentListingMetricsFragment = Pick<AiAgentMetrics, 'agentId' | 'conversations' | 'conversationsResolved' | 'conversationsHandoffRequested' | 'resolutionRate' | 'resolutionDefinition' | 'costMicroUsd'>;
1121
+ export type ListAiAgentsQueryVariables = Exact<{
1122
+ [key: string]: never;
1123
+ }>;
1124
+ export type ListAiAgentsQuery = {
1125
+ listAiAgents: Array<AiAgentSummaryFragment>;
1126
+ };
1127
+ export type ListAiAgentVersionsQueryVariables = Exact<{
1128
+ agentId: Scalars['ID']['input'];
1129
+ }>;
1130
+ export type ListAiAgentVersionsQuery = {
1131
+ listAiAgentVersions: Array<AiAgentVersionFragment>;
1132
+ };
1133
+ export type AiAgentMetricsByAgentQueryVariables = Exact<{
1134
+ input: AiAgentMetricsWindowInput;
1135
+ }>;
1136
+ export type AiAgentMetricsByAgentQuery = {
1137
+ aiAgentMetricsByAgent: Array<AiAgentListingMetricsFragment>;
1138
+ };
1139
+ export type DraftAiAgentMutationVariables = Exact<{
1140
+ input: DraftAiAgentInput;
1141
+ }>;
1142
+ export type DraftAiAgentMutation = {
1143
+ draftAiAgent?: Maybe<AiAgentVersionFragment>;
1144
+ };
1145
+ export type PublishAiAgentVersionMutationVariables = Exact<{
1146
+ input: AiAgentVersionRefInput;
1147
+ }>;
1148
+ export type PublishAiAgentVersionMutation = {
1149
+ publishAiAgentVersion: Array<AiAgentVersionFragment>;
1150
+ };
1151
+ export type UnpublishAiAgentVersionMutationVariables = Exact<{
1152
+ input: AiAgentVersionRefInput;
1153
+ }>;
1154
+ export type UnpublishAiAgentVersionMutation = {
1155
+ unpublishAiAgentVersion: Array<AiAgentVersionFragment>;
1156
+ };
1157
+ export type RollbackAiAgentVersionMutationVariables = Exact<{
1158
+ input: AiAgentVersionRefInput;
1159
+ }>;
1160
+ export type RollbackAiAgentVersionMutation = {
1161
+ rollbackAiAgentVersion: Array<AiAgentVersionFragment>;
1162
+ };
1163
+ export type RemoveAiAgentVersionMutationVariables = Exact<{
1164
+ input: AiAgentVersionRefInput;
1165
+ }>;
1166
+ export type RemoveAiAgentVersionMutation = {
1167
+ removeAiAgentVersion: Array<AiAgentVersionFragment>;
1168
+ };
1169
+ export type RemoveAiAgentMutationVariables = Exact<{
1170
+ input: AiAgentRefInput;
1171
+ }>;
1172
+ export type RemoveAiAgentMutation = Pick<Mutation, 'removeAiAgent'>;
1173
+ export type AiAgentUseCaseFragment = Pick<AiAgentUseCase, 'id' | 'name' | 'subjectDescription' | 'procedureId' | 'status' | 'updatedAt'>;
1174
+ export type AiAgentProcedureFragment = Pick<AiAgentProcedure, 'id' | 'name' | 'guidanceSteps' | 'toolIds' | 'contingency' | 'executionAutonomy' | 'status' | 'updatedAt'>;
1175
+ export type AiAgentToolFragment = (Pick<AiAgentTool, 'toolId' | 'name' | 'description' | 'effect' | 'availability' | 'requiresAuthenticatedCustomer' | 'onFailure' | 'customerScope' | 'returns' | 'approval'> & {
1176
+ parameters: Array<Pick<AiAgentToolParameter, 'name' | 'type' | 'required' | 'description' | 'grounding'>>;
1177
+ });
1178
+ export type AiAgentTraceFragment = (Pick<AiAgentTrace, 'sessionId' | 'turn' | 'agentId' | 'agentVersion' | 'input' | 'promptBuilderVersion' | 'masterRuleVersion' | 'identificationRequired' | 'promptFingerprint' | 'knowledgeOrigins' | 'outcome' | 'haltReason' | 'steps' | 'answer' | 'startedAt'> & {
1179
+ toolCalls: Array<Pick<AiAgentTracedToolCall, 'toolId' | 'name' | 'result' | 'ok' | 'connection' | 'errorClass'>>;
1180
+ });
1181
+ export type AiAgentScenarioFragment = Pick<AiAgentScenario, 'scenarioId' | 'description' | 'turns' | 'expectations'>;
1182
+ export type ListAiAgentUseCasesQueryVariables = Exact<{
1183
+ agentId: Scalars['ID']['input'];
1184
+ }>;
1185
+ export type ListAiAgentUseCasesQuery = {
1186
+ listAiAgentUseCases: Array<AiAgentUseCaseFragment>;
1187
+ };
1188
+ export type ListAiAgentProceduresQueryVariables = Exact<{
1189
+ agentId: Scalars['ID']['input'];
1190
+ }>;
1191
+ export type ListAiAgentProceduresQuery = {
1192
+ listAiAgentProcedures: Array<AiAgentProcedureFragment>;
1193
+ };
1194
+ export type ListAiAgentToolsQueryVariables = Exact<{
1195
+ [key: string]: never;
1196
+ }>;
1197
+ export type ListAiAgentToolsQuery = {
1198
+ listAiAgentTools: Array<AiAgentToolFragment>;
1199
+ };
1200
+ export type AiAgentUseCaseOverlapQueryVariables = Exact<{
1201
+ agentId: Scalars['ID']['input'];
1202
+ }>;
1203
+ export type AiAgentUseCaseOverlapQuery = {
1204
+ aiAgentUseCaseOverlap: (Pick<AiAgentUseCaseOverlap, 'threshold'> & {
1205
+ pairs: Array<Pick<AiAgentCompetingPair, 'left' | 'right' | 'score'>>;
1206
+ });
1207
+ };
1208
+ export type AiAgentTraceQueryVariables = Exact<{
1209
+ sessionId: Scalars['ID']['input'];
1210
+ }>;
1211
+ export type AiAgentTraceQuery = {
1212
+ aiAgentTrace: Array<AiAgentTraceFragment>;
1213
+ };
1214
+ export type ListAiAgentScenariosQueryVariables = Exact<{
1215
+ agentId: Scalars['ID']['input'];
1216
+ }>;
1217
+ export type ListAiAgentScenariosQuery = {
1218
+ listAiAgentScenarios: Array<AiAgentScenarioFragment>;
1219
+ };
1220
+ export type SetAiAgentRetentionPolicyMutationVariables = Exact<{
1221
+ input: AiAgentRetentionPolicyInput;
1222
+ }>;
1223
+ export type SetAiAgentRetentionPolicyMutation = {
1224
+ setAiAgentRetentionPolicy: (Pick<AiAgentRetentionPolicy, 'masksPersonalData'> & {
1225
+ days: Pick<AiAgentRetentionDays, 'transcript' | 'session_state' | 'long_term_memory'>;
1226
+ });
1227
+ };
1228
+ export type AiAgentRetentionPolicyQueryVariables = Exact<{
1229
+ [key: string]: never;
1230
+ }>;
1231
+ export type AiAgentRetentionPolicyQuery = {
1232
+ aiAgentRetentionPolicy: (Pick<AiAgentRetentionPolicy, 'masksPersonalData'> & {
1233
+ days: Pick<AiAgentRetentionDays, 'transcript' | 'session_state' | 'long_term_memory'>;
1234
+ });
1235
+ };
1236
+ export type AiAgentConversationMetricsQueryVariables = Exact<{
1237
+ input: AiAgentMetricsInput;
1238
+ }>;
1239
+ export type AiAgentConversationMetricsQuery = {
1240
+ aiAgentConversationMetrics: Array<Pick<AiAgentConversationMetrics, 'sessionId' | 'channel' | 'turns' | 'startedAt' | 'lastTurnAt' | 'totalTokens' | 'costMicroUsd' | 'durationMs' | 'lastOutcome'>>;
1241
+ };
1242
+ export type AiAgentConversationOutcomeQueryVariables = Exact<{
1243
+ sessionId: Scalars['ID']['input'];
1244
+ }>;
1245
+ export type AiAgentConversationOutcomeQuery = {
1246
+ aiAgentConversationOutcome?: Maybe<Pick<AiAgentConversationOutcome, 'sessionId' | 'agentId' | 'agentVersion' | 'resolution' | 'resolutionDefinition' | 'collectedData' | 'collectedDataAvailable' | 'turns' | 'startedAt' | 'lastTurnAt' | 'haltReason'>>;
1247
+ };
1248
+ export type SaveAiAgentUseCaseMutationVariables = Exact<{
1249
+ input: SaveAiAgentUseCaseInput;
1250
+ }>;
1251
+ export type SaveAiAgentUseCaseMutation = {
1252
+ saveAiAgentUseCase: AiAgentUseCaseFragment;
1253
+ };
1254
+ export type SaveAiAgentProcedureMutationVariables = Exact<{
1255
+ input: SaveAiAgentProcedureInput;
1256
+ }>;
1257
+ export type SaveAiAgentProcedureMutation = {
1258
+ saveAiAgentProcedure: AiAgentProcedureFragment;
1259
+ };
1260
+ export type RemoveAiAgentUseCaseMutationVariables = Exact<{
1261
+ input: AiAgentAuthoringRefInput;
1262
+ }>;
1263
+ export type RemoveAiAgentUseCaseMutation = Pick<Mutation, 'removeAiAgentUseCase'>;
1264
+ export type RemoveAiAgentProcedureMutationVariables = Exact<{
1265
+ input: AiAgentAuthoringRefInput;
1266
+ }>;
1267
+ export type RemoveAiAgentProcedureMutation = Pick<Mutation, 'removeAiAgentProcedure'>;
1268
+ export type ResolveAiAgentApprovalMutationVariables = Exact<{
1269
+ input: ResolveAiAgentApprovalInput;
1270
+ }>;
1271
+ export type ResolveAiAgentApprovalMutation = Pick<Mutation, 'resolveAiAgentApproval'>;
1272
+ export type RegisterAiAgentToolMutationVariables = Exact<{
1273
+ input: RegisterAiAgentToolInput;
1274
+ }>;
1275
+ export type RegisterAiAgentToolMutation = {
1276
+ registerAiAgentTool?: Maybe<AiAgentToolFragment>;
1277
+ };
1278
+ export type UnregisterAiAgentToolMutationVariables = Exact<{
1279
+ input: UnregisterAiAgentToolInput;
1280
+ }>;
1281
+ export type UnregisterAiAgentToolMutation = Pick<Mutation, 'unregisterAiAgentTool'>;
1282
+ export type SaveAiAgentScenarioMutationVariables = Exact<{
1283
+ input: SaveAiAgentScenarioInput;
1284
+ }>;
1285
+ export type SaveAiAgentScenarioMutation = {
1286
+ saveAiAgentScenario?: Maybe<AiAgentScenarioFragment>;
1287
+ };
1288
+ export type CheckAiAgentVersionMutationVariables = Exact<{
1289
+ input: CheckAiAgentVersionInput;
1290
+ }>;
1291
+ export type CheckAiAgentVersionMutation = {
1292
+ checkAiAgentVersion?: Maybe<(Pick<AiAgentCheckResult, 'safeToPublish'> & {
1293
+ reports: Array<Pick<AiAgentScenarioReport, 'scenarioId' | 'runs' | 'passed' | 'rate'>>;
1294
+ regressions: Array<Pick<AiAgentRegression, 'scenarioId' | 'before' | 'after'>>;
1295
+ })>;
1296
+ };
1297
+ export type AiAgentMetricsReportFragment = (Pick<AiAgentMetrics, 'agentId' | 'from' | 'to' | 'truncated' | 'conversations' | 'conversationsResolved' | 'conversationsInconclusive' | 'conversationsHandoffRequested' | 'resolutionRate' | 'resolutionDefinition' | 'escalatedToHuman' | 'escalatedToFlow' | 'escalatedTargetUndeclared' | 'humanRequestedTurns' | 'costMicroUsd' | 'costMicroUsdPerResolvedConversation' | 'unpricedTurns' | 'inputTokens' | 'outputTokens' | 'totalTokens' | 'cachedInputTokens' | 'cachedTurns' | 'llmCalls' | 'avgTurnDurationMs' | 'p95TurnDurationMs' | 'avgLlmLatencyMs' | 'turns' | 'answeredTurns' | 'answeredWithFailedConnectionTurns' | 'unansweredTurns' | 'unansweredDefinition' | 'blockedTurns' | 'haltedTurns' | 'budgetExceededTurns' | 'identificationRequiredTurns' | 'toolCalls' | 'toolCallsFailed' | 'knowledgeRetrieved' | 'knowledgeEmpty' | 'knowledgeUnavailable' | 'knowledgeSkipped'> & {
1298
+ handoffsByReason: Array<Pick<AiAgentMetricsCount, 'key' | 'count'>>;
1299
+ turnsByModel: Array<Pick<AiAgentMetricsCount, 'key' | 'count'>>;
1300
+ topTopics: Array<Pick<AiAgentMetricsCount, 'key' | 'count'>>;
1301
+ topUnansweredQuestions: Array<Pick<AiAgentMetricsCount, 'key' | 'count'>>;
1302
+ blocksByCategory: Array<Pick<AiAgentMetricsCount, 'key' | 'count'>>;
1303
+ haltReasons: Array<Pick<AiAgentMetricsCount, 'key' | 'count'>>;
1304
+ toolErrorsByConnection: Array<Pick<AiAgentMetricsCount, 'key' | 'count'>>;
1305
+ toolErrorsByClass: Array<Pick<AiAgentMetricsCount, 'key' | 'count'>>;
1306
+ });
1307
+ export type AiAgentMetricsQueryVariables = Exact<{
1308
+ input: AiAgentMetricsInput;
1309
+ }>;
1310
+ export type AiAgentMetricsQuery = {
1311
+ aiAgentMetrics: AiAgentMetricsReportFragment;
1312
+ };
1313
+ export type AiAgentVersionSpecQueryVariables = Exact<{
1314
+ agentId: Scalars['ID']['input'];
1315
+ }>;
1316
+ export type AiAgentVersionSpecQuery = {
1317
+ listAiAgentVersions: Array<AiAgentVersionWithSpecFragment>;
1318
+ };
1319
+ export type AiAgentRoutingPreviewQueryVariables = Exact<{
1320
+ input: AiAgentRoutingPreviewInput;
1321
+ }>;
1322
+ export type AiAgentRoutingPreviewQuery = {
1323
+ aiAgentRoutingPreview: (Pick<AiAgentRoutingPreview, 'high' | 'medium'> & {
1324
+ examples: Array<Pick<AiAgentRoutedExample, 'message' | 'useCaseId' | 'score' | 'confidence'>>;
1325
+ });
1326
+ };
1327
+ export type AiAgentKnowledgeBasesQueryVariables = Exact<{
1328
+ [key: string]: never;
1329
+ }>;
1330
+ export type AiAgentKnowledgeBasesQuery = {
1331
+ aiAgentKnowledgeBases: Array<Pick<AiAgentKnowledgeBase, 'id' | 'title'>>;
1332
+ };
364
1333
  export type ExtractImageMetadataMutationVariables = Exact<{
365
1334
  input: ExtractImageMetadataInput;
366
1335
  }>;
@@ -450,8 +1419,51 @@ export type RemoveQnAInstanceMutationVariables = Exact<{
450
1419
  export type RemoveQnAInstanceMutation = {
451
1420
  removeQnAInstance?: Maybe<QnaFragmentFragment>;
452
1421
  };
1422
+ export declare const AiAgentSummaryFragmentDoc = "\n fragment aiAgentSummary on AiAgentSummary {\n agentId\n name\n liveVersion\n channels\n updatedAt\n queuedApprovals\n status\n}\n ";
1423
+ export declare const AiAgentVersionFragmentDoc = "\n fragment aiAgentVersion on AiAgentVersion {\n agentId\n version\n status\n createdAt\n}\n ";
1424
+ export declare const AiAgentSpecFragmentDoc = "\n fragment aiAgentSpec on AiAgentSpec {\n identity {\n displayName\n role\n tone\n toneNotes\n openingMessage\n outOfScopeBehaviour\n }\n can\n cannot\n knowledgeBaseIds\n knowledgeFallback\n toolIds\n budget {\n maxSteps\n maxToolCalls\n maxTokens\n maxCostMicroUsd\n maxPeriodCostMicroUsd\n onExceeded\n }\n handoff {\n transition\n target\n }\n channels\n}\n ";
1425
+ export declare const AiAgentVersionWithSpecFragmentDoc = "\n fragment aiAgentVersionWithSpec on AiAgentVersion {\n agentId\n version\n status\n createdAt\n spec {\n ...aiAgentSpec\n }\n}\n ";
1426
+ export declare const AiAgentListingMetricsFragmentDoc = "\n fragment aiAgentListingMetrics on AiAgentMetrics {\n agentId\n conversations\n conversationsResolved\n conversationsHandoffRequested\n resolutionRate\n resolutionDefinition\n costMicroUsd\n}\n ";
1427
+ export declare const AiAgentUseCaseFragmentDoc = "\n fragment aiAgentUseCase on AiAgentUseCase {\n id\n name\n subjectDescription\n procedureId\n status\n updatedAt\n}\n ";
1428
+ export declare const AiAgentProcedureFragmentDoc = "\n fragment aiAgentProcedure on AiAgentProcedure {\n id\n name\n guidanceSteps\n toolIds\n contingency\n executionAutonomy\n status\n updatedAt\n}\n ";
1429
+ export declare const AiAgentToolFragmentDoc = "\n fragment aiAgentTool on AiAgentTool {\n toolId\n name\n description\n effect\n availability\n requiresAuthenticatedCustomer\n onFailure\n customerScope\n returns\n approval\n parameters {\n name\n type\n required\n description\n grounding\n }\n}\n ";
1430
+ export declare const AiAgentTraceFragmentDoc = "\n fragment aiAgentTrace on AiAgentTrace {\n sessionId\n turn\n agentId\n agentVersion\n input\n promptBuilderVersion\n masterRuleVersion\n identificationRequired\n promptFingerprint\n knowledgeOrigins\n outcome\n haltReason\n steps\n answer\n startedAt\n toolCalls {\n toolId\n name\n result\n ok\n connection\n errorClass\n }\n}\n ";
1431
+ export declare const AiAgentScenarioFragmentDoc = "\n fragment aiAgentScenario on AiAgentScenario {\n scenarioId\n description\n turns\n expectations\n}\n ";
1432
+ export declare const AiAgentMetricsReportFragmentDoc = "\n fragment aiAgentMetricsReport on AiAgentMetrics {\n agentId\n from\n to\n truncated\n conversations\n conversationsResolved\n conversationsInconclusive\n conversationsHandoffRequested\n resolutionRate\n resolutionDefinition\n escalatedToHuman\n escalatedToFlow\n escalatedTargetUndeclared\n handoffsByReason {\n key\n count\n }\n humanRequestedTurns\n costMicroUsd\n costMicroUsdPerResolvedConversation\n unpricedTurns\n inputTokens\n outputTokens\n totalTokens\n cachedInputTokens\n cachedTurns\n llmCalls\n turnsByModel {\n key\n count\n }\n avgTurnDurationMs\n p95TurnDurationMs\n avgLlmLatencyMs\n turns\n answeredTurns\n answeredWithFailedConnectionTurns\n unansweredTurns\n unansweredDefinition\n topTopics {\n key\n count\n }\n topUnansweredQuestions {\n key\n count\n }\n blockedTurns\n blocksByCategory {\n key\n count\n }\n haltedTurns\n haltReasons {\n key\n count\n }\n budgetExceededTurns\n identificationRequiredTurns\n toolCalls\n toolCallsFailed\n toolErrorsByConnection {\n key\n count\n }\n toolErrorsByClass {\n key\n count\n }\n knowledgeRetrieved\n knowledgeEmpty\n knowledgeUnavailable\n knowledgeSkipped\n}\n ";
453
1433
  export declare const NlpInstanceFragmentDoc = "\n fragment nlpInstance on NlpInstance {\n id\n name\n drn\n options {\n transition\n samples\n }\n createdAt\n updatedAt\n}\n ";
454
1434
  export declare const QnaFragmentFragmentDoc = "\n fragment qnaFragment on QnAInstance {\n id\n name\n drn\n credentialsId\n tryToReplyOnTransition\n createdAt\n updatedAt\n}\n ";
1435
+ export declare const ListAiAgentsDocument = "\n query listAiAgents {\n listAiAgents {\n ...aiAgentSummary\n }\n}\n \n fragment aiAgentSummary on AiAgentSummary {\n agentId\n name\n liveVersion\n channels\n updatedAt\n queuedApprovals\n status\n}\n ";
1436
+ export declare const ListAiAgentVersionsDocument = "\n query listAiAgentVersions($agentId: ID!) {\n listAiAgentVersions(agentId: $agentId) {\n ...aiAgentVersion\n }\n}\n \n fragment aiAgentVersion on AiAgentVersion {\n agentId\n version\n status\n createdAt\n}\n ";
1437
+ export declare const AiAgentMetricsByAgentDocument = "\n query aiAgentMetricsByAgent($input: AiAgentMetricsWindowInput!) {\n aiAgentMetricsByAgent(input: $input) {\n ...aiAgentListingMetrics\n }\n}\n \n fragment aiAgentListingMetrics on AiAgentMetrics {\n agentId\n conversations\n conversationsResolved\n conversationsHandoffRequested\n resolutionRate\n resolutionDefinition\n costMicroUsd\n}\n ";
1438
+ export declare const DraftAiAgentDocument = "\n mutation draftAiAgent($input: DraftAiAgentInput!) {\n draftAiAgent(input: $input) {\n ...aiAgentVersion\n }\n}\n \n fragment aiAgentVersion on AiAgentVersion {\n agentId\n version\n status\n createdAt\n}\n ";
1439
+ export declare const PublishAiAgentVersionDocument = "\n mutation publishAiAgentVersion($input: AiAgentVersionRefInput!) {\n publishAiAgentVersion(input: $input) {\n ...aiAgentVersion\n }\n}\n \n fragment aiAgentVersion on AiAgentVersion {\n agentId\n version\n status\n createdAt\n}\n ";
1440
+ export declare const UnpublishAiAgentVersionDocument = "\n mutation unpublishAiAgentVersion($input: AiAgentVersionRefInput!) {\n unpublishAiAgentVersion(input: $input) {\n ...aiAgentVersion\n }\n}\n \n fragment aiAgentVersion on AiAgentVersion {\n agentId\n version\n status\n createdAt\n}\n ";
1441
+ export declare const RollbackAiAgentVersionDocument = "\n mutation rollbackAiAgentVersion($input: AiAgentVersionRefInput!) {\n rollbackAiAgentVersion(input: $input) {\n ...aiAgentVersion\n }\n}\n \n fragment aiAgentVersion on AiAgentVersion {\n agentId\n version\n status\n createdAt\n}\n ";
1442
+ export declare const RemoveAiAgentVersionDocument = "\n mutation removeAiAgentVersion($input: AiAgentVersionRefInput!) {\n removeAiAgentVersion(input: $input) {\n ...aiAgentVersion\n }\n}\n \n fragment aiAgentVersion on AiAgentVersion {\n agentId\n version\n status\n createdAt\n}\n ";
1443
+ export declare const RemoveAiAgentDocument = "\n mutation removeAiAgent($input: AiAgentRefInput!) {\n removeAiAgent(input: $input)\n}\n ";
1444
+ export declare const ListAiAgentUseCasesDocument = "\n query listAiAgentUseCases($agentId: ID!) {\n listAiAgentUseCases(agentId: $agentId) {\n ...aiAgentUseCase\n }\n}\n \n fragment aiAgentUseCase on AiAgentUseCase {\n id\n name\n subjectDescription\n procedureId\n status\n updatedAt\n}\n ";
1445
+ export declare const ListAiAgentProceduresDocument = "\n query listAiAgentProcedures($agentId: ID!) {\n listAiAgentProcedures(agentId: $agentId) {\n ...aiAgentProcedure\n }\n}\n \n fragment aiAgentProcedure on AiAgentProcedure {\n id\n name\n guidanceSteps\n toolIds\n contingency\n executionAutonomy\n status\n updatedAt\n}\n ";
1446
+ export declare const ListAiAgentToolsDocument = "\n query listAiAgentTools {\n listAiAgentTools {\n ...aiAgentTool\n }\n}\n \n fragment aiAgentTool on AiAgentTool {\n toolId\n name\n description\n effect\n availability\n requiresAuthenticatedCustomer\n onFailure\n customerScope\n returns\n approval\n parameters {\n name\n type\n required\n description\n grounding\n }\n}\n ";
1447
+ export declare const AiAgentUseCaseOverlapDocument = "\n query aiAgentUseCaseOverlap($agentId: ID!) {\n aiAgentUseCaseOverlap(agentId: $agentId) {\n threshold\n pairs {\n left\n right\n score\n }\n }\n}\n ";
1448
+ export declare const AiAgentTraceDocument = "\n query aiAgentTrace($sessionId: ID!) {\n aiAgentTrace(sessionId: $sessionId) {\n ...aiAgentTrace\n }\n}\n \n fragment aiAgentTrace on AiAgentTrace {\n sessionId\n turn\n agentId\n agentVersion\n input\n promptBuilderVersion\n masterRuleVersion\n identificationRequired\n promptFingerprint\n knowledgeOrigins\n outcome\n haltReason\n steps\n answer\n startedAt\n toolCalls {\n toolId\n name\n result\n ok\n connection\n errorClass\n }\n}\n ";
1449
+ export declare const ListAiAgentScenariosDocument = "\n query listAiAgentScenarios($agentId: ID!) {\n listAiAgentScenarios(agentId: $agentId) {\n ...aiAgentScenario\n }\n}\n \n fragment aiAgentScenario on AiAgentScenario {\n scenarioId\n description\n turns\n expectations\n}\n ";
1450
+ export declare const SetAiAgentRetentionPolicyDocument = "\n mutation setAiAgentRetentionPolicy($input: AiAgentRetentionPolicyInput!) {\n setAiAgentRetentionPolicy(input: $input) {\n days {\n transcript\n session_state\n long_term_memory\n }\n masksPersonalData\n }\n}\n ";
1451
+ export declare const AiAgentRetentionPolicyDocument = "\n query aiAgentRetentionPolicy {\n aiAgentRetentionPolicy {\n days {\n transcript\n session_state\n long_term_memory\n }\n masksPersonalData\n }\n}\n ";
1452
+ export declare const AiAgentConversationMetricsDocument = "\n query aiAgentConversationMetrics($input: AiAgentMetricsInput!) {\n aiAgentConversationMetrics(input: $input) {\n sessionId\n channel\n turns\n startedAt\n lastTurnAt\n totalTokens\n costMicroUsd\n durationMs\n lastOutcome\n }\n}\n ";
1453
+ export declare const AiAgentConversationOutcomeDocument = "\n query aiAgentConversationOutcome($sessionId: ID!) {\n aiAgentConversationOutcome(sessionId: $sessionId) {\n sessionId\n agentId\n agentVersion\n resolution\n resolutionDefinition\n collectedData\n collectedDataAvailable\n turns\n startedAt\n lastTurnAt\n haltReason\n }\n}\n ";
1454
+ export declare const SaveAiAgentUseCaseDocument = "\n mutation saveAiAgentUseCase($input: SaveAiAgentUseCaseInput!) {\n saveAiAgentUseCase(input: $input) {\n ...aiAgentUseCase\n }\n}\n \n fragment aiAgentUseCase on AiAgentUseCase {\n id\n name\n subjectDescription\n procedureId\n status\n updatedAt\n}\n ";
1455
+ export declare const SaveAiAgentProcedureDocument = "\n mutation saveAiAgentProcedure($input: SaveAiAgentProcedureInput!) {\n saveAiAgentProcedure(input: $input) {\n ...aiAgentProcedure\n }\n}\n \n fragment aiAgentProcedure on AiAgentProcedure {\n id\n name\n guidanceSteps\n toolIds\n contingency\n executionAutonomy\n status\n updatedAt\n}\n ";
1456
+ export declare const RemoveAiAgentUseCaseDocument = "\n mutation removeAiAgentUseCase($input: AiAgentAuthoringRefInput!) {\n removeAiAgentUseCase(input: $input)\n}\n ";
1457
+ export declare const RemoveAiAgentProcedureDocument = "\n mutation removeAiAgentProcedure($input: AiAgentAuthoringRefInput!) {\n removeAiAgentProcedure(input: $input)\n}\n ";
1458
+ export declare const ResolveAiAgentApprovalDocument = "\n mutation resolveAiAgentApproval($input: ResolveAiAgentApprovalInput!) {\n resolveAiAgentApproval(input: $input)\n}\n ";
1459
+ export declare const RegisterAiAgentToolDocument = "\n mutation registerAiAgentTool($input: RegisterAiAgentToolInput!) {\n registerAiAgentTool(input: $input) {\n ...aiAgentTool\n }\n}\n \n fragment aiAgentTool on AiAgentTool {\n toolId\n name\n description\n effect\n availability\n requiresAuthenticatedCustomer\n onFailure\n customerScope\n returns\n approval\n parameters {\n name\n type\n required\n description\n grounding\n }\n}\n ";
1460
+ export declare const UnregisterAiAgentToolDocument = "\n mutation unregisterAiAgentTool($input: UnregisterAiAgentToolInput!) {\n unregisterAiAgentTool(input: $input)\n}\n ";
1461
+ export declare const SaveAiAgentScenarioDocument = "\n mutation saveAiAgentScenario($input: SaveAiAgentScenarioInput!) {\n saveAiAgentScenario(input: $input) {\n ...aiAgentScenario\n }\n}\n \n fragment aiAgentScenario on AiAgentScenario {\n scenarioId\n description\n turns\n expectations\n}\n ";
1462
+ export declare const CheckAiAgentVersionDocument = "\n mutation checkAiAgentVersion($input: CheckAiAgentVersionInput!) {\n checkAiAgentVersion(input: $input) {\n safeToPublish\n reports {\n scenarioId\n runs\n passed\n rate\n }\n regressions {\n scenarioId\n before\n after\n }\n }\n}\n ";
1463
+ export declare const AiAgentMetricsDocument = "\n query aiAgentMetrics($input: AiAgentMetricsInput!) {\n aiAgentMetrics(input: $input) {\n ...aiAgentMetricsReport\n }\n}\n \n fragment aiAgentMetricsReport on AiAgentMetrics {\n agentId\n from\n to\n truncated\n conversations\n conversationsResolved\n conversationsInconclusive\n conversationsHandoffRequested\n resolutionRate\n resolutionDefinition\n escalatedToHuman\n escalatedToFlow\n escalatedTargetUndeclared\n handoffsByReason {\n key\n count\n }\n humanRequestedTurns\n costMicroUsd\n costMicroUsdPerResolvedConversation\n unpricedTurns\n inputTokens\n outputTokens\n totalTokens\n cachedInputTokens\n cachedTurns\n llmCalls\n turnsByModel {\n key\n count\n }\n avgTurnDurationMs\n p95TurnDurationMs\n avgLlmLatencyMs\n turns\n answeredTurns\n answeredWithFailedConnectionTurns\n unansweredTurns\n unansweredDefinition\n topTopics {\n key\n count\n }\n topUnansweredQuestions {\n key\n count\n }\n blockedTurns\n blocksByCategory {\n key\n count\n }\n haltedTurns\n haltReasons {\n key\n count\n }\n budgetExceededTurns\n identificationRequiredTurns\n toolCalls\n toolCallsFailed\n toolErrorsByConnection {\n key\n count\n }\n toolErrorsByClass {\n key\n count\n }\n knowledgeRetrieved\n knowledgeEmpty\n knowledgeUnavailable\n knowledgeSkipped\n}\n ";
1464
+ export declare const AiAgentVersionSpecDocument = "\n query aiAgentVersionSpec($agentId: ID!) {\n listAiAgentVersions(agentId: $agentId) {\n ...aiAgentVersionWithSpec\n }\n}\n \n fragment aiAgentVersionWithSpec on AiAgentVersion {\n agentId\n version\n status\n createdAt\n spec {\n ...aiAgentSpec\n }\n}\n \n\n fragment aiAgentSpec on AiAgentSpec {\n identity {\n displayName\n role\n tone\n toneNotes\n openingMessage\n outOfScopeBehaviour\n }\n can\n cannot\n knowledgeBaseIds\n knowledgeFallback\n toolIds\n budget {\n maxSteps\n maxToolCalls\n maxTokens\n maxCostMicroUsd\n maxPeriodCostMicroUsd\n onExceeded\n }\n handoff {\n transition\n target\n }\n channels\n}\n ";
1465
+ export declare const AiAgentRoutingPreviewDocument = "\n query aiAgentRoutingPreview($input: AiAgentRoutingPreviewInput!) {\n aiAgentRoutingPreview(input: $input) {\n high\n medium\n examples {\n message\n useCaseId\n score\n confidence\n }\n }\n}\n ";
1466
+ export declare const AiAgentKnowledgeBasesDocument = "\n query aiAgentKnowledgeBases {\n aiAgentKnowledgeBases {\n id\n title\n }\n}\n ";
455
1467
  export declare const ExtractImageMetadataDocument = "\n mutation extractImageMetadata($input: ExtractImageMetadataInput!) {\n extractImageMetadata(input: $input) {\n success\n model\n extractedMetadata\n tokenUsage {\n prompt\n completion\n total\n }\n }\n}\n ";
456
1468
  export declare const GetNlpInstanceDocument = "\n query getNlpInstance($id: ID!) {\n getNlpInstance(id: $id) {\n ...nlpInstance\n }\n}\n \n fragment nlpInstance on NlpInstance {\n id\n name\n drn\n options {\n transition\n samples\n }\n createdAt\n updatedAt\n}\n ";
457
1469
  export declare const ListNlpInstancesDocument = "\n query listNlpInstances {\n listNlpInstances {\n ...nlpInstance\n }\n}\n \n fragment nlpInstance on NlpInstance {\n id\n name\n drn\n options {\n transition\n samples\n }\n createdAt\n updatedAt\n}\n ";
@@ -467,6 +1479,38 @@ export declare const UpdateQnAInstanceDocument = "\n mutation updateQnAInstan
467
1479
  export declare const RemoveQnAInstanceDocument = "\n mutation removeQnAInstance($input: RemoveQnAInstanceInput!) {\n removeQnAInstance(input: $input) {\n ...qnaFragment\n }\n}\n \n fragment qnaFragment on QnAInstance {\n id\n name\n drn\n credentialsId\n tryToReplyOnTransition\n createdAt\n updatedAt\n}\n ";
468
1480
  export type Requester<C = {}> = <R, V>(doc: string, vars?: V, options?: C) => Promise<R> | AsyncIterableIterator<R>;
469
1481
  export declare function getSdk<C>(requester: Requester<C>): {
1482
+ listAiAgents(variables?: ListAiAgentsQueryVariables, options?: C): Promise<ListAiAgentsQuery>;
1483
+ listAiAgentVersions(variables: ListAiAgentVersionsQueryVariables, options?: C): Promise<ListAiAgentVersionsQuery>;
1484
+ aiAgentMetricsByAgent(variables: AiAgentMetricsByAgentQueryVariables, options?: C): Promise<AiAgentMetricsByAgentQuery>;
1485
+ draftAiAgent(variables: DraftAiAgentMutationVariables, options?: C): Promise<DraftAiAgentMutation>;
1486
+ publishAiAgentVersion(variables: PublishAiAgentVersionMutationVariables, options?: C): Promise<PublishAiAgentVersionMutation>;
1487
+ unpublishAiAgentVersion(variables: UnpublishAiAgentVersionMutationVariables, options?: C): Promise<UnpublishAiAgentVersionMutation>;
1488
+ rollbackAiAgentVersion(variables: RollbackAiAgentVersionMutationVariables, options?: C): Promise<RollbackAiAgentVersionMutation>;
1489
+ removeAiAgentVersion(variables: RemoveAiAgentVersionMutationVariables, options?: C): Promise<RemoveAiAgentVersionMutation>;
1490
+ removeAiAgent(variables: RemoveAiAgentMutationVariables, options?: C): Promise<RemoveAiAgentMutation>;
1491
+ listAiAgentUseCases(variables: ListAiAgentUseCasesQueryVariables, options?: C): Promise<ListAiAgentUseCasesQuery>;
1492
+ listAiAgentProcedures(variables: ListAiAgentProceduresQueryVariables, options?: C): Promise<ListAiAgentProceduresQuery>;
1493
+ listAiAgentTools(variables?: ListAiAgentToolsQueryVariables, options?: C): Promise<ListAiAgentToolsQuery>;
1494
+ aiAgentUseCaseOverlap(variables: AiAgentUseCaseOverlapQueryVariables, options?: C): Promise<AiAgentUseCaseOverlapQuery>;
1495
+ aiAgentTrace(variables: AiAgentTraceQueryVariables, options?: C): Promise<AiAgentTraceQuery>;
1496
+ listAiAgentScenarios(variables: ListAiAgentScenariosQueryVariables, options?: C): Promise<ListAiAgentScenariosQuery>;
1497
+ setAiAgentRetentionPolicy(variables: SetAiAgentRetentionPolicyMutationVariables, options?: C): Promise<SetAiAgentRetentionPolicyMutation>;
1498
+ aiAgentRetentionPolicy(variables?: AiAgentRetentionPolicyQueryVariables, options?: C): Promise<AiAgentRetentionPolicyQuery>;
1499
+ aiAgentConversationMetrics(variables: AiAgentConversationMetricsQueryVariables, options?: C): Promise<AiAgentConversationMetricsQuery>;
1500
+ aiAgentConversationOutcome(variables: AiAgentConversationOutcomeQueryVariables, options?: C): Promise<AiAgentConversationOutcomeQuery>;
1501
+ saveAiAgentUseCase(variables: SaveAiAgentUseCaseMutationVariables, options?: C): Promise<SaveAiAgentUseCaseMutation>;
1502
+ saveAiAgentProcedure(variables: SaveAiAgentProcedureMutationVariables, options?: C): Promise<SaveAiAgentProcedureMutation>;
1503
+ removeAiAgentUseCase(variables: RemoveAiAgentUseCaseMutationVariables, options?: C): Promise<RemoveAiAgentUseCaseMutation>;
1504
+ removeAiAgentProcedure(variables: RemoveAiAgentProcedureMutationVariables, options?: C): Promise<RemoveAiAgentProcedureMutation>;
1505
+ resolveAiAgentApproval(variables: ResolveAiAgentApprovalMutationVariables, options?: C): Promise<ResolveAiAgentApprovalMutation>;
1506
+ registerAiAgentTool(variables: RegisterAiAgentToolMutationVariables, options?: C): Promise<RegisterAiAgentToolMutation>;
1507
+ unregisterAiAgentTool(variables: UnregisterAiAgentToolMutationVariables, options?: C): Promise<UnregisterAiAgentToolMutation>;
1508
+ saveAiAgentScenario(variables: SaveAiAgentScenarioMutationVariables, options?: C): Promise<SaveAiAgentScenarioMutation>;
1509
+ checkAiAgentVersion(variables: CheckAiAgentVersionMutationVariables, options?: C): Promise<CheckAiAgentVersionMutation>;
1510
+ aiAgentMetrics(variables: AiAgentMetricsQueryVariables, options?: C): Promise<AiAgentMetricsQuery>;
1511
+ aiAgentVersionSpec(variables: AiAgentVersionSpecQueryVariables, options?: C): Promise<AiAgentVersionSpecQuery>;
1512
+ aiAgentRoutingPreview(variables: AiAgentRoutingPreviewQueryVariables, options?: C): Promise<AiAgentRoutingPreviewQuery>;
1513
+ aiAgentKnowledgeBases(variables?: AiAgentKnowledgeBasesQueryVariables, options?: C): Promise<AiAgentKnowledgeBasesQuery>;
470
1514
  extractImageMetadata(variables: ExtractImageMetadataMutationVariables, options?: C): Promise<ExtractImageMetadataMutation>;
471
1515
  getNlpInstance(variables: GetNlpInstanceQueryVariables, options?: C): Promise<GetNlpInstanceQuery>;
472
1516
  listNlpInstances(variables?: ListNlpInstancesQueryVariables, options?: C): Promise<ListNlpInstancesQuery>;