@omnicross/contracts 0.4.5 → 0.4.7

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/dist/index.d.cts CHANGED
@@ -19,7 +19,7 @@ export { LEGACY_UNKNOWN_PROVIDER_ID, fromLegacyWebSearchResponse, legacyErrorStr
19
19
  export { KnownSearchProviderId, OrchestratedSearchResponse, SearchAttempt, SearchAttemptEvent, SearchAttemptOutcome, SearchCompleteEvent, SearchContributionContext, SearchErrorCode, SearchErrorShape, SearchOptions, SearchPolicy, SearchProvider, SearchProviderCapabilities, SearchProviderContribution, SearchProviderDescriptor, SearchProviderDiagnostic, SearchProviderError, SearchProviderErrorInit, SearchProviderHealthStatus, SearchProviderId, SearchProviderSource, SearchRequest, SearchResponse, SearchResult, SearchRuntimeEvent, SearchRuntimeEventBase, SearchTimeRange, SearchTransportKind, SearchUrlReadResult, isKnownSearchProviderId, isSearchProviderError, toSearchErrorShape } from './search-types.cjs';
20
20
  export { SUBSCRIPTION_MODEL_CATALOG, subscriptionProviderHasCatalog } from './subscription-model-catalog.cjs';
21
21
  export { CANNOT_DISABLE_THINKING_PATTERNS, DEFAULT_MAX_TOKENS, EFFORT_RATIO, LEGACY_THINKING_TOKEN_LIMITS, REASONING_MODEL_PATTERNS, THINKING_TOKEN_MAP, buildAnthropicThinking, buildGeminiThinkingConfig, buildQwenThinkingConfig, calculateThinkingBudget, canDisableThinking, findLegacyTokenLimit, findTokenLimit, getClaudeMaxTokens, getOpenAIReasoningEffort, isReasoningModel } from './thinking-config.cjs';
22
- export { ApiKeyUsageRow, MessageUsageRow, ModelUsageRow, SessionCacheStats, UsageCacheKeySource, UsageDateRange, UsageEventInput, UsageEventRecord, UsageQueryParams, UsageTimeBucket, UsageTimeSeriesBucket, UsageTotals } from './usage-stats-types.cjs';
22
+ export { ApiKeyUsageRow, MessageUsageRow, ModelUsageRow, SessionCacheStats, UsageCacheKeySource, UsageDateRange, UsageEventInput, UsageEventRecord, UsageQueryFilter, UsageQueryParams, UsageTimeBucket, UsageTimeSeriesBucket, UsageTotals } from './usage-stats-types.cjs';
23
23
  export { UsageEngineOrigin, UsageTokens } from './usage-types.cjs';
24
24
  export { DEFAULT_VOUCHER_CONFIG, VoucherConfig, VoucherCreated, VoucherGrant, VoucherInfo, VoucherRecord, VoucherRedeemResult, VoucherStatus, VoucherType } from './voucher-types.cjs';
25
25
  export { SanitizedWebhookConfig, SanitizedWebhookDestination, WEBHOOK_DESTINATION_TYPES, WEBHOOK_EVENT_KINDS, WebhookAnomalyState, WebhookConfig, WebhookDestination, WebhookDestinationType, WebhookEvent, WebhookEventKind, WebhookQuotaScope } from './webhook-types.cjs';
package/dist/index.d.ts CHANGED
@@ -19,7 +19,7 @@ export { LEGACY_UNKNOWN_PROVIDER_ID, fromLegacyWebSearchResponse, legacyErrorStr
19
19
  export { KnownSearchProviderId, OrchestratedSearchResponse, SearchAttempt, SearchAttemptEvent, SearchAttemptOutcome, SearchCompleteEvent, SearchContributionContext, SearchErrorCode, SearchErrorShape, SearchOptions, SearchPolicy, SearchProvider, SearchProviderCapabilities, SearchProviderContribution, SearchProviderDescriptor, SearchProviderDiagnostic, SearchProviderError, SearchProviderErrorInit, SearchProviderHealthStatus, SearchProviderId, SearchProviderSource, SearchRequest, SearchResponse, SearchResult, SearchRuntimeEvent, SearchRuntimeEventBase, SearchTimeRange, SearchTransportKind, SearchUrlReadResult, isKnownSearchProviderId, isSearchProviderError, toSearchErrorShape } from './search-types.js';
20
20
  export { SUBSCRIPTION_MODEL_CATALOG, subscriptionProviderHasCatalog } from './subscription-model-catalog.js';
21
21
  export { CANNOT_DISABLE_THINKING_PATTERNS, DEFAULT_MAX_TOKENS, EFFORT_RATIO, LEGACY_THINKING_TOKEN_LIMITS, REASONING_MODEL_PATTERNS, THINKING_TOKEN_MAP, buildAnthropicThinking, buildGeminiThinkingConfig, buildQwenThinkingConfig, calculateThinkingBudget, canDisableThinking, findLegacyTokenLimit, findTokenLimit, getClaudeMaxTokens, getOpenAIReasoningEffort, isReasoningModel } from './thinking-config.js';
22
- export { ApiKeyUsageRow, MessageUsageRow, ModelUsageRow, SessionCacheStats, UsageCacheKeySource, UsageDateRange, UsageEventInput, UsageEventRecord, UsageQueryParams, UsageTimeBucket, UsageTimeSeriesBucket, UsageTotals } from './usage-stats-types.js';
22
+ export { ApiKeyUsageRow, MessageUsageRow, ModelUsageRow, SessionCacheStats, UsageCacheKeySource, UsageDateRange, UsageEventInput, UsageEventRecord, UsageQueryFilter, UsageQueryParams, UsageTimeBucket, UsageTimeSeriesBucket, UsageTotals } from './usage-stats-types.js';
23
23
  export { UsageEngineOrigin, UsageTokens } from './usage-types.js';
24
24
  export { DEFAULT_VOUCHER_CONFIG, VoucherConfig, VoucherCreated, VoucherGrant, VoucherInfo, VoucherRecord, VoucherRedeemResult, VoucherStatus, VoucherType } from './voucher-types.js';
25
25
  export { SanitizedWebhookConfig, SanitizedWebhookDestination, WEBHOOK_DESTINATION_TYPES, WEBHOOK_EVENT_KINDS, WebhookAnomalyState, WebhookConfig, WebhookDestination, WebhookDestinationType, WebhookEvent, WebhookEventKind, WebhookQuotaScope } from './webhook-types.js';
@@ -73,6 +73,19 @@ interface UsageQueryParams {
73
73
  /** Optional filter — restrict to a particular session. */
74
74
  sessionId?: string;
75
75
  }
76
+ /**
77
+ * Optional attribute filter for the aggregate usage views. A store may answer a
78
+ * filtered query from raw rows only; whole-day rollup composition is possible
79
+ * where the rollup's sub-groups carry the split (per-model rows split by
80
+ * provider; per-key rows split by key). Absent/undefined fields are not
81
+ * filtered. An empty object is identical to no filter.
82
+ */
83
+ interface UsageQueryFilter {
84
+ /** Restrict to one provider's events (`UsageEventRecord.providerId`). */
85
+ providerId?: string;
86
+ /** Restrict to one downstream API key's events (`UsageEventRecord.apiKeyId`). */
87
+ apiKeyId?: string;
88
+ }
76
89
  /** Aggregated totals over a date range. */
77
90
  interface UsageTotals {
78
91
  inputTokens: number;
@@ -182,4 +195,4 @@ interface MessageUsageRow {
182
195
  costSavedByCacheUsd: number;
183
196
  }
184
197
 
185
- export type { ApiKeyUsageRow, MessageUsageRow, ModelUsageRow, SessionCacheStats, UsageCacheKeySource, UsageDateRange, UsageEventInput, UsageEventRecord, UsageQueryParams, UsageTimeBucket, UsageTimeSeriesBucket, UsageTotals };
198
+ export type { ApiKeyUsageRow, MessageUsageRow, ModelUsageRow, SessionCacheStats, UsageCacheKeySource, UsageDateRange, UsageEventInput, UsageEventRecord, UsageQueryFilter, UsageQueryParams, UsageTimeBucket, UsageTimeSeriesBucket, UsageTotals };
@@ -73,6 +73,19 @@ interface UsageQueryParams {
73
73
  /** Optional filter — restrict to a particular session. */
74
74
  sessionId?: string;
75
75
  }
76
+ /**
77
+ * Optional attribute filter for the aggregate usage views. A store may answer a
78
+ * filtered query from raw rows only; whole-day rollup composition is possible
79
+ * where the rollup's sub-groups carry the split (per-model rows split by
80
+ * provider; per-key rows split by key). Absent/undefined fields are not
81
+ * filtered. An empty object is identical to no filter.
82
+ */
83
+ interface UsageQueryFilter {
84
+ /** Restrict to one provider's events (`UsageEventRecord.providerId`). */
85
+ providerId?: string;
86
+ /** Restrict to one downstream API key's events (`UsageEventRecord.apiKeyId`). */
87
+ apiKeyId?: string;
88
+ }
76
89
  /** Aggregated totals over a date range. */
77
90
  interface UsageTotals {
78
91
  inputTokens: number;
@@ -182,4 +195,4 @@ interface MessageUsageRow {
182
195
  costSavedByCacheUsd: number;
183
196
  }
184
197
 
185
- export type { ApiKeyUsageRow, MessageUsageRow, ModelUsageRow, SessionCacheStats, UsageCacheKeySource, UsageDateRange, UsageEventInput, UsageEventRecord, UsageQueryParams, UsageTimeBucket, UsageTimeSeriesBucket, UsageTotals };
198
+ export type { ApiKeyUsageRow, MessageUsageRow, ModelUsageRow, SessionCacheStats, UsageCacheKeySource, UsageDateRange, UsageEventInput, UsageEventRecord, UsageQueryFilter, UsageQueryParams, UsageTimeBucket, UsageTimeSeriesBucket, UsageTotals };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@omnicross/contracts",
3
- "version": "0.4.5",
3
+ "version": "0.4.7",
4
4
  "description": "Dependency-light, host-agnostic contract types + runtime-value helpers shared by the @omnicross/* packages.",
5
5
  "license": "MIT",
6
6
  "author": "Sayo (https://github.com/Dumoedss)",