@squidcloud/client 1.0.469 → 1.0.471

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.
@@ -8,7 +8,7 @@
8
8
  *
9
9
  * See MetricName.kt for documentation on each value.
10
10
  */
11
- export declare const ALL_SQUID_METRIC_NAMES: readonly ["squid_functionExecution_count", "squid_functionExecution_time", "squid_aiChatbotContext_size", "squid_aiChatbotChatInputTokens_count", "squid_aiChatbotChatOutputTokens_count", "squid_aiChatbotChatOutcome_count", "squid_aiImageGeneration_count", "squid_aiImageGeneration_time", "squid_aiRemoveBackground_count", "squid_aiRemoveBackground_time", "squid_aiAudioTranscribe_count", "squid_aiAudioTranscribe_time", "squid_aiAudioCreateSpeech_count", "squid_aiAudioCreateSpeech_time", "squid_aiIntegrationData_count", "squid_aiIntegrationData_time", "squid_aiIntegrationApi_count", "squid_aiIntegrationApi_time", "squid_apiControllerCall_count", "squid_apiControllerCall_time", "squid_aiContextUpsert_count", "squid_aiContextDelete_count", "squid_codeInitialization_count", "squid_codeInitialization_time", "squid_deleteApiKey_count", "squid_deleteApiKey_time", "squid_deleteSecret_count", "squid_deleteSecret_time", "squid_discoverGraphQLConnectionSchema_count", "squid_discoverGraphQLConnectionSchema_time", "squid_discoverOpenApiSchema_count", "squid_discoverOpenApiSchema_time", "squid_discoverOpenApiSchemaFromFile_count", "squid_discoverOpenApiSchemaFromFile_time", "squid_executeBackendFunction_count", "squid_executeBackendFunction_time", "squid_getAiChatbotProfiles_count", "squid_getAiChatbotProfiles_time", "squid_getAllApiKeys_count", "squid_getAllApiKeys_time", "squid_getAllSecrets_count", "squid_getAllSecrets_time", "squid_getAppApiKey_count", "squid_getAppApiKey_time", "squid_getSecret_count", "squid_getSecret_time", "squid_graphql_count", "squid_graphql_time", "squid_graphqlQuery_count", "squid_graphqlQuery_time", "squid_integrationCount_value", "squid_mutate_count", "squid_mutate_time", "squid_metricQuery_count", "squid_metricQuery_time", "squid_metricReport_count", "squid_metricReport_time", "squid_nativeQuery_count", "squid_nativeQuery_time", "squid_openapi_count", "squid_openapi_time", "squid_produceTopicMessage_count", "squid_produceTopicMessage_time", "squid_query_count", "squid_query_time", "squid_registerQuery_count", "squid_registerQuery_time", "squid_rerankChunks_count", "squid_rerankChunks_time", "squid_schedulerJob_count", "squid_schedulerJob_time", "squid_schema_size", "squid_secrets_entries", "squid_storageDeleteFiles_count", "squid_storageDeleteFiles_time", "squid_storageGetDownloadUrl_count", "squid_storageGetDownloadUrl_time", "squid_storageGetFileMetadata_count", "squid_storageGetFileMetadata_time", "squid_storageListDirectoryContents_count", "squid_storageListDirectoryContents_time", "squid_storageUploadFile_count", "squid_storageUploadFile_time", "squid_subscribeToTopic_count", "squid_subscribeToTopic_time", "squid_testGraphQLConnection_count", "squid_testGraphQLConnection_time", "squid_testAgentProtocolConnection_count", "squid_testAgentProtocolConnection_time", "squid_trigger_count", "squid_trigger_time", "squid_upsertApiKey_count", "squid_upsertApiKey_time", "squid_upsertSecret_count", "squid_upsertSecret_time", "squid_vectorChunks_count", "squid_vectorChunks_time", "squid_webhook_count", "squid_webhook_time", "squid_acquireLock_count", "squid_acquireLock_time", "squid_releaseLock_count", "squid_releaseLock_time"];
11
+ export declare const ALL_SQUID_METRIC_NAMES: readonly ["squid_functionExecution_count", "squid_functionExecution_time", "squid_aiChatbotContext_size", "squid_aiChatbotChatInputTokens_count", "squid_aiChatbotChatOutputTokens_count", "squid_aiChatbotChatReasoningTokens_count", "squid_aiChatbotChatCacheReadInputTokens_count", "squid_aiChatbotChatCacheWriteInputTokens_count", "squid_aiChatbotChatOutcome_count", "squid_aiImageGeneration_count", "squid_aiImageGeneration_time", "squid_aiRemoveBackground_count", "squid_aiRemoveBackground_time", "squid_aiAudioTranscribe_count", "squid_aiAudioTranscribe_time", "squid_aiAudioCreateSpeech_count", "squid_aiAudioCreateSpeech_time", "squid_aiIntegrationData_count", "squid_aiIntegrationData_time", "squid_aiIntegrationApi_count", "squid_aiIntegrationApi_time", "squid_apiControllerCall_count", "squid_apiControllerCall_time", "squid_aiContextUpsert_count", "squid_aiContextDelete_count", "squid_codeInitialization_count", "squid_codeInitialization_time", "squid_deleteApiKey_count", "squid_deleteApiKey_time", "squid_deleteSecret_count", "squid_deleteSecret_time", "squid_discoverGraphQLConnectionSchema_count", "squid_discoverGraphQLConnectionSchema_time", "squid_discoverOpenApiSchema_count", "squid_discoverOpenApiSchema_time", "squid_discoverOpenApiSchemaFromFile_count", "squid_discoverOpenApiSchemaFromFile_time", "squid_executeBackendFunction_count", "squid_executeBackendFunction_time", "squid_getAiChatbotProfiles_count", "squid_getAiChatbotProfiles_time", "squid_getAllApiKeys_count", "squid_getAllApiKeys_time", "squid_getAllSecrets_count", "squid_getAllSecrets_time", "squid_getAppApiKey_count", "squid_getAppApiKey_time", "squid_getSecret_count", "squid_getSecret_time", "squid_graphql_count", "squid_graphql_time", "squid_graphqlQuery_count", "squid_graphqlQuery_time", "squid_integrationCount_value", "squid_mutate_count", "squid_mutate_time", "squid_metricQuery_count", "squid_metricQuery_time", "squid_metricReport_count", "squid_metricReport_time", "squid_nativeQuery_count", "squid_nativeQuery_time", "squid_openapi_count", "squid_openapi_time", "squid_produceTopicMessage_count", "squid_produceTopicMessage_time", "squid_query_count", "squid_query_time", "squid_registerQuery_count", "squid_registerQuery_time", "squid_rerankChunks_count", "squid_rerankChunks_time", "squid_schedulerJob_count", "squid_schedulerJob_time", "squid_schema_size", "squid_secrets_entries", "squid_storageDeleteFiles_count", "squid_storageDeleteFiles_time", "squid_storageGetDownloadUrl_count", "squid_storageGetDownloadUrl_time", "squid_storageGetFileMetadata_count", "squid_storageGetFileMetadata_time", "squid_storageListDirectoryContents_count", "squid_storageListDirectoryContents_time", "squid_storageUploadFile_count", "squid_storageUploadFile_time", "squid_subscribeToTopic_count", "squid_subscribeToTopic_time", "squid_testGraphQLConnection_count", "squid_testGraphQLConnection_time", "squid_testAgentProtocolConnection_count", "squid_testAgentProtocolConnection_time", "squid_trigger_count", "squid_trigger_time", "squid_upsertApiKey_count", "squid_upsertApiKey_time", "squid_upsertSecret_count", "squid_upsertSecret_time", "squid_vectorChunks_count", "squid_vectorChunks_time", "squid_webhook_count", "squid_webhook_time", "squid_acquireLock_count", "squid_acquireLock_time", "squid_releaseLock_count", "squid_releaseLock_time"];
12
12
  export type MetricName = (typeof ALL_SQUID_METRIC_NAMES)[number];
13
13
  /** Common prefix for all Squid metrics. */
14
14
  export declare const SQUID_METRIC_NAME_PREFIX = "squid_";
@@ -1041,9 +1041,22 @@ export interface ListAgentsResponse {
1041
1041
  /** All AI agents defined for the application. */
1042
1042
  agents: Array<AiAgent>;
1043
1043
  }
1044
+ /**
1045
+ * Request options for listing the chat models available to an application.
1046
+ * @category AI
1047
+ */
1048
+ export interface ListChatModelsRequest {
1049
+ /**
1050
+ * When true, deprecated vendor models (those with `replacedBy`) are included.
1051
+ * Defaults to false (only active models are returned).
1052
+ */
1053
+ includeDeprecated?: boolean;
1054
+ }
1044
1055
  /**
1045
1056
  * Response containing the list of chat models available to an application.
1046
1057
  * Includes both Squid-provided vendor models and any custom integration models.
1058
+ * Vendor models carry a human-readable `description`. Deprecated vendor models are
1059
+ * included only when requested via `includeDeprecated` and are marked with `replacedBy`.
1047
1060
  * @category AI
1048
1061
  */
1049
1062
  export interface ListChatModelsResponse {
@@ -206,6 +206,15 @@ export type StableDiffusionModelName = (typeof STABLE_DIFFUSION_MODEL_NAMES)[num
206
206
  * @category AI
207
207
  */
208
208
  export type FluxModelName = (typeof FLUX_MODEL_NAMES)[number];
209
+ /**
210
+ * Where a chat model offered to an app comes from. See {@link ModelIdSpec.source}.
211
+ * @category AI
212
+ */
213
+ export declare const AI_MODEL_SOURCES: readonly ["vendor", "connector", "custom"];
214
+ /**
215
+ * @category AI
216
+ */
217
+ export type AiModelSource = (typeof AI_MODEL_SOURCES)[number];
209
218
  /** Represents an AI model. */
210
219
  export interface ModelIdSpec {
211
220
  /** The model ID used for API calls. */
@@ -214,6 +223,20 @@ export interface ModelIdSpec {
214
223
  integrationId?: string;
215
224
  /** Human-readable display name for the model (e.g. "GPT-4o"). */
216
225
  displayName?: string;
226
+ /** Short human-readable description of the model. Undefined for custom integration models. */
227
+ description?: string;
228
+ /**
229
+ * Set only for deprecated models: the active model that calls to this model are routed to.
230
+ * Undefined for active models.
231
+ */
232
+ replacedBy?: AiChatModelName;
233
+ /**
234
+ * Where the model comes from. Always set on `listChatModels()` results:
235
+ * - 'vendor': a Squid-provided model from the vendor model registry.
236
+ * - 'connector': provided by an integration configured on the app (OpenAI-compatible, Bedrock, Vertex).
237
+ * - 'custom': a user-added model from the app's bundle (e.g. CLI agent models like Claude Code or Codex).
238
+ */
239
+ source?: AiModelSource;
217
240
  }
218
241
  /**
219
242
  * Type guard to check if a model selection is integration-based.
@@ -2,6 +2,7 @@ import { AgentContextRequest, AiChatModelSelection, UpsertContextStatusError } f
2
2
  import { AiEmbeddingsModelSelection, AiRerankProvider } from './ai-common.public-types';
3
3
  import { AiContextId, AiKnowledgeBaseId, AppId } from './communication.public-types';
4
4
  import { DocumentExtractionMethod } from './extraction.public-types';
5
+ import { MetadataAndFilter, MetadataFieldFilter, MetadataFilter, MetadataOrFilter, MetadataSimpleFilter, MetadataValue, MetadataValueArray } from './metadata-filter.public-types';
5
6
  /**
6
7
  * The set of supported vector store backends for a knowledge base. The authoritative backend for a
7
8
  * given KB is persisted on its record; reads/writes route through the matching vector provider.
@@ -57,67 +58,37 @@ export interface AiKnowledgeBaseMetadataField {
57
58
  export type AiContextMetadata = Record<string, AiContextMetadataValue>;
58
59
  /**
59
60
  * @category AI
61
+ * @deprecated Use {@link MetadataValue} from `metadata-filter.public-types` instead.
60
62
  */
61
- export type AiContextMetadataValue = number | string | boolean | undefined;
63
+ export type AiContextMetadataValue = MetadataValue;
62
64
  /**
63
65
  * @category AI
66
+ * @deprecated Use {@link MetadataValueArray} from `metadata-filter.public-types` instead.
64
67
  */
65
- export type AiContextMetadataValueArray = AiContextMetadataValue[];
66
- interface AiContextMetadataEqFilter {
67
- $eq: AiContextMetadataValue;
68
- }
69
- interface AiContextMetadataNeFilter {
70
- $ne: AiContextMetadataValue;
71
- }
72
- interface AiContextMetadataGtFilter {
73
- $gt: number;
74
- }
75
- interface AiContextMetadataGteFilter {
76
- $gte: number;
77
- }
78
- interface AiContextMetadataLtFilter {
79
- $lt: number;
80
- }
81
- interface AiContextMetadataLteFilter {
82
- $lte: number;
83
- }
84
- interface AiContextMetadataInFilter {
85
- $in: AiContextMetadataValueArray;
86
- }
87
- interface AiContextMetadataNinFilter {
88
- $nin: AiContextMetadataValueArray;
89
- }
90
- interface AiContextMetadataExistsFilter {
91
- $exists: boolean;
92
- }
68
+ export type AiContextMetadataValueArray = MetadataValueArray;
93
69
  /**
94
70
  * @category AI
71
+ * @deprecated Use {@link MetadataSimpleFilter} from `metadata-filter.public-types` instead.
95
72
  */
96
- export type AiContextMetadataSimpleFilter = AiContextMetadataEqFilter | AiContextMetadataNeFilter | AiContextMetadataGtFilter | AiContextMetadataGteFilter | AiContextMetadataLtFilter | AiContextMetadataLteFilter | AiContextMetadataInFilter | AiContextMetadataNinFilter | AiContextMetadataExistsFilter;
73
+ export type AiContextMetadataSimpleFilter = MetadataSimpleFilter;
97
74
  /**
98
75
  * A filter for AI context metadata based on field-specific conditions or values.
99
76
  * @category AI
77
+ * @deprecated Use {@link MetadataFieldFilter} from `metadata-filter.public-types` instead.
100
78
  */
101
- export interface AiContextMetadataFieldFilter {
102
- /** A record where keys are field names and values are either simple filters or direct metadata values. */
103
- [field: string]: AiContextMetadataSimpleFilter | AiContextMetadataValue;
104
- }
79
+ export type AiContextMetadataFieldFilter = MetadataFieldFilter;
105
80
  /**
106
81
  * A filter combining multiple AI context metadata filters with a logical AND operation.
107
82
  * @category AI
83
+ * @deprecated Use {@link MetadataAndFilter} from `metadata-filter.public-types` instead.
108
84
  */
109
- export interface AiContextMetadataAndFilter {
110
- /** An array of filters that must all be true for the condition to pass. */
111
- $and: AiContextMetadataFilter[];
112
- }
85
+ export type AiContextMetadataAndFilter = MetadataAndFilter;
113
86
  /**
114
87
  * A filter combining multiple AI context metadata filters with a logical OR operation.
115
88
  * @category AI
89
+ * @deprecated Use {@link MetadataOrFilter} from `metadata-filter.public-types` instead.
116
90
  */
117
- export interface AiContextMetadataOrFilter {
118
- /** An array of filters where at least one must be true for the condition to pass. */
119
- $or: AiContextMetadataFilter[];
120
- }
91
+ export type AiContextMetadataOrFilter = MetadataOrFilter;
121
92
  /**
122
93
  * The options for the AI knowledgebase search method.
123
94
  * @category AI
@@ -167,8 +138,9 @@ export interface AiHybridSearchWeights {
167
138
  }
168
139
  /**
169
140
  * @category AI
141
+ * @deprecated Use {@link MetadataFilter} from `metadata-filter.public-types` instead.
170
142
  */
171
- export type AiContextMetadataFilter = AiContextMetadataFieldFilter | AiContextMetadataAndFilter | AiContextMetadataOrFilter;
143
+ export type AiContextMetadataFilter = MetadataFilter;
172
144
  /**
173
145
  * Represents an AI knowledge base's context entry with metadata and content.
174
146
  * @category AI
@@ -35,6 +35,15 @@ export interface ExtractDataFromDocumentOptions {
35
35
  * the content. Only consulted by extractors that handle text input.
36
36
  */
37
37
  textFormat?: 'auto' | 'markdown' | 'html' | 'plain';
38
+ /**
39
+ * Whether to read document-level properties (title/author/dates) from the source container and
40
+ * return them as `documentMetadata`. Off by default: container parsing has a real per-file cost
41
+ * (zip/PDF re-parse), so callers opt in only when the owning knowledge base declares metadata fields.
42
+ *
43
+ * Honored only by file-based extraction (which owns the original buffer for every format);
44
+ * URL-based extraction ignores it and never returns `documentMetadata`.
45
+ */
46
+ collectDocumentMetadata?: boolean;
38
47
  }
39
48
  /**
40
49
  * Request payload for extracting data from a document via URL.
@@ -108,6 +117,11 @@ export interface ExtractDataFromDocumentResponse {
108
117
  * Path to the original file in cloud storage, if applicable.
109
118
  */
110
119
  longTermStoragePath?: string;
120
+ /**
121
+ * Document-level metadata extracted from the source container (best-effort). Present only when the
122
+ * extractor was able to read it.
123
+ */
124
+ documentMetadata?: DocumentMetadata;
111
125
  }
112
126
  /**
113
127
  * Create PDF request type.
@@ -186,3 +200,22 @@ export interface CreatePdfResponse {
186
200
  /** The generated filename. */
187
201
  fileName?: string;
188
202
  }
203
+ /**
204
+ * Document-level properties read from the source container during extraction. Every field is optional
205
+ * and best-effort: when a container does not expose a property (or parsing fails) the field is simply
206
+ * absent. Consumed by schema-driven metadata extraction as the deterministic source for matching
207
+ * knowledge-base `metadataFields` before falling back to LLM extraction.
208
+ * @category AI
209
+ */
210
+ export interface DocumentMetadata {
211
+ /** Document title (e.g. OOXML `dc:title`, PDF `/Title`, front-matter `title`, `<title>`). */
212
+ docTitle?: string;
213
+ /** Document author (e.g. OOXML `dc:creator`, PDF `/Author`, front-matter / `<meta author>`). */
214
+ docAuthor?: string;
215
+ /** Creation timestamp, ISO 8601. */
216
+ docCreatedAt?: string;
217
+ /** Last-modified timestamp, ISO 8601. */
218
+ docModifiedAt?: string;
219
+ /** Source document type: `pdf` | `docx` | `pptx` | `xlsx` | `md` | `html` | `txt`. */
220
+ docType?: string;
221
+ }
@@ -0,0 +1,85 @@
1
+ /**
2
+ * Generic metadata filter types used across the platform.
3
+ *
4
+ * These types define a MongoDB-style filter syntax for filtering records by metadata
5
+ * fields. They support field-level operators (`$eq`, `$ne`, `$gt`, `$gte`, `$lt`,
6
+ * `$lte`, `$in`, `$nin`, `$exists`) and boolean combinators (`$and`, `$or`).
7
+ *
8
+ * Originally created for AI knowledge base context filtering, these types are now
9
+ * shared across metrics tag filtering, matchmaking, and other subsystems.
10
+ */
11
+ /** Primitive metadata value. */
12
+ export type MetadataValue = number | string | boolean | undefined;
13
+ /** Array of metadata values (used by `$in` / `$nin`). */
14
+ export type MetadataValueArray = MetadataValue[];
15
+ interface MetadataEqFilter {
16
+ $eq: MetadataValue;
17
+ }
18
+ interface MetadataNeFilter {
19
+ $ne: MetadataValue;
20
+ }
21
+ interface MetadataGtFilter {
22
+ $gt: number;
23
+ }
24
+ interface MetadataGteFilter {
25
+ $gte: number;
26
+ }
27
+ interface MetadataLtFilter {
28
+ $lt: number;
29
+ }
30
+ interface MetadataLteFilter {
31
+ $lte: number;
32
+ }
33
+ interface MetadataInFilter {
34
+ $in: MetadataValueArray;
35
+ }
36
+ interface MetadataNinFilter {
37
+ $nin: MetadataValueArray;
38
+ }
39
+ interface MetadataExistsFilter {
40
+ $exists: boolean;
41
+ }
42
+ /** A single-field operator: one of `$eq`, `$ne`, `$gt`, `$gte`, `$lt`, `$lte`, `$in`, `$nin`, `$exists`. */
43
+ export type MetadataSimpleFilter = MetadataEqFilter | MetadataNeFilter | MetadataGtFilter | MetadataGteFilter | MetadataLtFilter | MetadataLteFilter | MetadataInFilter | MetadataNinFilter | MetadataExistsFilter;
44
+ /**
45
+ * A filter for metadata based on field-specific conditions or direct values.
46
+ * @category Metadata
47
+ */
48
+ export interface MetadataFieldFilter {
49
+ /** A record where keys are field names and values are either operator objects or direct scalar values. */
50
+ [field: string]: MetadataSimpleFilter | MetadataValue;
51
+ }
52
+ /**
53
+ * A filter combining multiple metadata filters with a logical AND operation.
54
+ * @category Metadata
55
+ */
56
+ export interface MetadataAndFilter {
57
+ /** An array of filters that must all be true for the condition to pass. */
58
+ $and: MetadataFilter[];
59
+ }
60
+ /**
61
+ * A filter combining multiple metadata filters with a logical OR operation.
62
+ * @category Metadata
63
+ */
64
+ export interface MetadataOrFilter {
65
+ /** An array of filters where at least one must be true for the condition to pass. */
66
+ $or: MetadataFilter[];
67
+ }
68
+ /**
69
+ * A composable metadata filter supporting field operators and boolean combinators.
70
+ *
71
+ * @example Simple equality
72
+ * ```ts
73
+ * { status: 'active' }
74
+ * ```
75
+ * @example Operators
76
+ * ```ts
77
+ * { age: { $gte: 18 }, role: { $in: ['admin', 'editor'] } }
78
+ * ```
79
+ * @example Boolean combinators
80
+ * ```ts
81
+ * { $or: [{ status: 'active' }, { role: { $ne: 'guest' } }] }
82
+ * ```
83
+ */
84
+ export type MetadataFilter = MetadataFieldFilter | MetadataAndFilter | MetadataOrFilter;
85
+ export {};
@@ -1,3 +1,11 @@
1
+ import { MetadataFilter } from './metadata-filter.public-types';
2
+ /**
3
+ * Tag filter for metric queries. Accepts either a simple key-value record (backward compatible)
4
+ * or the full {@link MetadataFilter} tree with `$eq`, `$ne`, `$in`, `$nin`, `$exists`,
5
+ * `$gt`, `$gte`, `$lt`, `$lte`, `$and`, `$or`.
6
+ * @category Metrics
7
+ */
8
+ export type MetricTagFilter = Record<string, string> | MetadataFilter;
1
9
  /**
2
10
  * Name of metrics publicly provided by the system.
3
11
  * - Metrics suffixed by '_time' are 'gauge' metrics.
@@ -49,10 +57,22 @@ export interface QueryMetricsRequestCommon {
49
57
  */
50
58
  fillValue?: number | null;
51
59
  /**
52
- * Tag filters.
53
- * TODO: add operations to exclude tags: !=, !contains...
60
+ * Tag filters. Supports two formats:
61
+ * - Simple: `Record<string, string>` — each key-value pair is an exact equality match.
62
+ * - Advanced: `AiContextMetadataFilter` — the same filter syntax used by AI knowledge base
63
+ * metadata, supporting `$eq`, `$ne`, `$in`, `$nin`, `$exists`, `$and`, `$or`, and
64
+ * comparison operators (`$gt`, `$gte`, `$lt`, `$lte` — numeric comparisons on string tags).
65
+ *
66
+ * @example Simple format
67
+ * ```ts
68
+ * tagFilter: { aiModel: 'claude-sonnet-4-5-20250514', isError: '0' }
69
+ * ```
70
+ * @example Advanced format
71
+ * ```ts
72
+ * tagFilter: { $or: [{ aiModel: { $in: ['claude-sonnet-4-5-20250514', 'gpt-4o'] } }, { isError: { $ne: '0' } }] }
73
+ * ```
54
74
  */
55
- tagFilter?: Record<string, string>;
75
+ tagFilter?: MetricTagFilter;
56
76
  /**
57
77
  * A mapping of known tag values that must be present in the response groups.
58
78
  *
@@ -107,6 +107,12 @@ export interface AgentAuditLogUpdateEvent {
107
107
  inputUsage?: AiUsageMetric;
108
108
  /** Output usage metric (tokens or characters depending on provider). */
109
109
  outputUsage?: AiUsageMetric;
110
+ /** Reasoning tokens consumed (where the provider reports them separately from output tokens). */
111
+ reasoningTokens?: number;
112
+ /** Number of input tokens served from the provider's prompt cache (read hits). */
113
+ cacheReadInputTokens?: number;
114
+ /** Number of input tokens written into the provider's prompt cache (cache misses that created new entries). */
115
+ cacheWriteInputTokens?: number;
110
116
  }
111
117
  /** Tag for metric events. Value: '0' - not an error, '1' - is an error. */
112
118
  export declare const O11Y_TAG_IS_ERROR = "isError";
@@ -120,6 +126,7 @@ export declare const O11Y_TAG_AI_PROFILE = "aiProfile";
120
126
  /** Tag for AI KnowledgeBase events */
121
127
  export declare const O11Y_TAG_AI_KNOWLEDGE_BASE_MODEL = "aiKnowledgeBaseModel";
122
128
  export declare const O11Y_TAG_API_KEY_SOURCE = "apiKeySource";
129
+ export declare const O11Y_TAG_AI_JOB_ID = "aiJobId";
123
130
  /** Tag for metric and log events. Value: '0' - not a tenant originated, '1' - is a tenant originated. */
124
131
  export declare const O11Y_TAG_IS_TENANT_ORIGINATED = "isTenantOriginated";
125
132
  /** Contains a full (with a service name) function name for backend functions. */
@@ -8,7 +8,7 @@ import { AiFilesClient } from './ai-files-client';
8
8
  import { AiImageClient } from './ai-image-client';
9
9
  import { AiKnowledgeBaseReference } from './ai-knowledge-base/ai-knowledge-base-client-reference';
10
10
  import { AiMatchMakingClient } from './ai-matchmaking-client';
11
- import { AiAgent, AiAgentApiIntegrationOptions, AiAgentId, AiFileProviderType, AiKnowledgeBase, AiKnowledgeBaseId, AiProviderType, AiSessionContext, AiStatusMessage, ApplicationAiSettings, IntegrationId, JobId, ModelIdSpec, SecretKey } from './public-types';
11
+ import { AiAgent, AiAgentApiIntegrationOptions, AiAgentId, AiFileProviderType, AiKnowledgeBase, AiKnowledgeBaseId, AiProviderType, AiSessionContext, AiStatusMessage, ApplicationAiSettings, IntegrationId, JobId, ListChatModelsRequest, ModelIdSpec, SecretKey } from './public-types';
12
12
  /**
13
13
  * AiClient class serves as a facade for interacting with different AI services.
14
14
  * It provides simplified access to AI chatbot and assistant functionalities
@@ -47,8 +47,10 @@ export declare class AiClient {
47
47
  /**
48
48
  * Returns a list of all available AI chat models.
49
49
  * Includes both Squid-provided vendor models and custom integration models.
50
+ * Vendor models carry a human-readable `description`. Deprecated vendor models are
51
+ * included only when `options.includeDeprecated` is true and are marked with `replacedBy`.
50
52
  */
51
- listChatModels(): Promise<ModelIdSpec[]>;
53
+ listChatModels(options?: ListChatModelsRequest): Promise<ModelIdSpec[]>;
52
54
  /**
53
55
  * Retrieves an AI image client.
54
56
  */
@@ -2,4 +2,4 @@
2
2
  * The current version of the SquidCloud client package.
3
3
  * @category Platform
4
4
  */
5
- export declare const SQUIDCLOUD_CLIENT_PACKAGE_VERSION = "1.0.469";
5
+ export declare const SQUIDCLOUD_CLIENT_PACKAGE_VERSION = "1.0.471";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@squidcloud/client",
3
- "version": "1.0.469",
3
+ "version": "1.0.471",
4
4
  "description": "A typescript implementation of the Squid client",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",