import { z } from "zod"; import { DshCompatibilitySchema } from "./compatibility.js"; import { FeesDataSchema } from "./fees.js"; export declare const API_BASE = "/api/usage-stats/v1"; export declare const API_PATHS: Readonly<{ overview: "/api/usage-stats/v1/overview"; series: "/api/usage-stats/v1/series"; breakdown: "/api/usage-stats/v1/breakdown"; activity: "/api/usage-stats/v1/activity"; accounts: "/api/usage-stats/v1/accounts"; account: "/api/usage-stats/v1/account"; providers: "/api/usage-stats/v1/providers"; refresh: "/api/usage-stats/v1/refresh"; settings: "/api/usage-stats/v1/settings"; settingsState: "/api/usage-stats/v1/settings/state"; pricing: "/api/usage-stats/v1/pricing"; alerts: "/api/usage-stats/v1/alerts"; fees: "/api/usage-stats/v1/fees"; credentials: "/api/usage-stats/v1/credentials"; credentialImport: "/api/usage-stats/v1/credentials/import"; oauthDevice: "/api/usage-stats/v1/oauth/device"; oauthDevicePoll: "/api/usage-stats/v1/oauth/device/poll"; export: "/api/usage-stats/v1/export"; health: "/api/usage-stats/v1/health"; compatibility: "/api/usage-stats/v1/compatibility"; localAuth: "/api/usage-stats/v1/local/auth"; localUsage: "/api/usage-stats/v1/local/usage"; localUsageScan: "/api/usage-stats/v1/local/usage/scan"; statusProbes: "/api/usage-stats/v1/status-probes"; }>; export { DshCompatibilitySchema }; export declare const ExportLayoutSchema: z.ZodEnum<{ daily: "daily"; filtered: "filtered"; bundle: "bundle"; }>; export type ExportLayout = z.infer; export type { AccountFeeRecord, FeesData } from "./fees.js"; export { FeesDataSchema }; export declare const UsageFreshnessStateSchema: z.ZodEnum<{ stale: "stale"; "not-collected": "not-collected"; fresh: "fresh"; }>; export type UsageFreshnessState = z.infer; export declare const ApiMetaSchema: z.ZodObject<{ schemaVersion: z.ZodLiteral<1>; generatedAt: z.ZodNumber; sourceUpdatedAt: z.ZodNullable; usageUpdatedAt: z.ZodNullable; accountsUpdatedAt: z.ZodNullable; usageState: z.ZodEnum<{ stale: "stale"; "not-collected": "not-collected"; fresh: "fresh"; }>; partial: z.ZodBoolean; stale: z.ZodBoolean; warnings: z.ZodArray; }, z.core.$strict>; export type ApiMeta = z.infer; export interface ApiSuccess { readonly ok: true; readonly data: T; readonly meta: ApiMeta; } export interface ApiFailure { readonly ok: false; readonly error: { readonly code: string; readonly message: string; readonly details?: Readonly>; }; readonly meta: ApiMeta; } export type ApiResponse = ApiSuccess | ApiFailure; export declare const PreferencesSnapshotSchema: z.ZodObject<{ preferences: z.ZodObject<{ version: z.ZodLiteral<1>; display: z.ZodObject<{ preset: z.ZodEnum<{ minimal: "minimal"; quota: "quota"; cost: "cost"; analyst: "analyst"; }>; sidebarMetric: z.ZodEnum<{ todayTokens: "todayTokens"; todayCost: "todayCost"; lowestQuota: "lowestQuota"; alerts: "alerts"; }>; entryMode: z.ZodDefault>; hudPosition: z.ZodDefault>>; defaultRange: z.ZodEnum<{ month: "month"; today: "today"; "7d": "7d"; "30d": "30d"; }>; comparePrevious: z.ZodBoolean; density: z.ZodEnum<{ compact: "compact"; comfortable: "comfortable"; }>; reducedMotion: z.ZodEnum<{ never: "never"; system: "system"; always: "always"; }>; timeZone: z.ZodString; weekStartsOn: z.ZodUnion, z.ZodLiteral<1>, z.ZodLiteral<6>]>; baseCurrency: z.ZodPipe>; modules: z.ZodDefault>; hidden: z.ZodArray>; }, z.core.$strict>>; modulesCustomized: z.ZodDefault; streakMinTokens: z.ZodDefault; }, z.core.$strict>; providers: z.ZodObject<{ hidden: z.ZodArray; order: z.ZodArray; aliases: z.ZodRecord; colors: z.ZodRecord; }, z.core.$strict>; privacy: z.ZodObject<{ showSessionIdentifiers: z.ZodBoolean; redactExports: z.ZodBoolean; autoExportEnabled: z.ZodDefault; autoExportDirectory: z.ZodDefault; autoExportLayout: z.ZodDefault>; autoExportIntervalMinutes: z.ZodDefault; }, z.core.$strict>; alerts: z.ZodDefault; }, z.core.$strict>>; }, z.core.$strict>; revision: z.ZodNumber; }, z.core.$strict>; export declare const PreferencesPatchRequestSchema: z.ZodUnion>; providers: z.ZodOptional>; privacy: z.ZodOptional>; alerts: z.ZodOptional>; }, z.core.$strict>; expectedRevision: z.ZodNumber; }, z.core.$strict>, z.ZodObject<{ operations: z.ZodArray; path: z.ZodArray; value: z.ZodUnknown; }, z.core.$strict>, z.ZodObject<{ op: z.ZodLiteral<"unset">; path: z.ZodArray; }, z.core.$strict>], "op">>; expectedRevision: z.ZodNumber; }, z.core.$strict>]>; export type PreferencesPatchRequest = z.infer; export declare const CostEstimateSchema: z.ZodObject<{ amount: z.ZodNullable; currency: z.ZodString; coverageRatio: z.ZodNumber; estimated: z.ZodLiteral; }, z.core.$strict>; export type CostEstimate = z.infer; export declare const OverviewDataSchema: z.ZodObject<{ current: z.ZodObject<{ inputTokens: z.ZodNumber; outputTokens: z.ZodNumber; cacheReadTokens: z.ZodNumber; cacheWriteTokens: z.ZodNumber; }, z.core.$strict>; previous: z.ZodNullable>; requests: z.ZodNumber; previousRequests: z.ZodNullable; cacheHitRate: z.ZodNullable; previousCacheHitRate: z.ZodNullable; cost: z.ZodObject<{ amount: z.ZodNullable; currency: z.ZodString; coverageRatio: z.ZodNumber; estimated: z.ZodLiteral; }, z.core.$strict>; previousCost: z.ZodNullable; currency: z.ZodString; coverageRatio: z.ZodNumber; estimated: z.ZodLiteral; }, z.core.$strict>>; activeProviders: z.ZodNumber; alertCount: z.ZodNumber; }, z.core.$strict>; export type OverviewData = z.infer; export declare const SeriesValueSchema: z.ZodObject<{ key: z.ZodString; label: z.ZodString; value: z.ZodNullable; }, z.core.$strict>; export declare const SeriesPointSchema: z.ZodObject<{ timestamp: z.ZodNumber; values: z.ZodArray; }, z.core.$strict>>; }, z.core.$strict>; export declare const SeriesDataSchema: z.ZodObject<{ metric: z.ZodEnum<{ tokens: "tokens"; requests: "requests"; estimatedCost: "estimatedCost"; cacheHitRate: "cacheHitRate"; }>; groupBy: z.ZodEnum<{ session: "session"; none: "none"; provider: "provider"; model: "model"; }>; points: z.ZodArray; }, z.core.$strict>>; }, z.core.$strict>>; forecast: z.ZodArray; }, z.core.$strict>>; }, z.core.$strict>>; }, z.core.$strict>; export type SeriesData = z.infer; export declare const BreakdownRowSchema: z.ZodObject<{ key: z.ZodString; label: z.ZodString; buckets: z.ZodObject<{ inputTokens: z.ZodNumber; outputTokens: z.ZodNumber; cacheReadTokens: z.ZodNumber; cacheWriteTokens: z.ZodNumber; }, z.core.$strict>; requests: z.ZodNumber; cacheHitRate: z.ZodNullable; cost: z.ZodObject<{ amount: z.ZodNullable; currency: z.ZodString; coverageRatio: z.ZodNumber; estimated: z.ZodLiteral; }, z.core.$strict>; }, z.core.$strict>; export declare const BreakdownDataSchema: z.ZodObject<{ dimension: z.ZodEnum<{ session: "session"; provider: "provider"; model: "model"; }>; rows: z.ZodArray; requests: z.ZodNumber; cacheHitRate: z.ZodNullable; cost: z.ZodObject<{ amount: z.ZodNullable; currency: z.ZodString; coverageRatio: z.ZodNumber; estimated: z.ZodLiteral; }, z.core.$strict>; }, z.core.$strict>>; }, z.core.$strict>; export type BreakdownData = z.infer; export declare const AccountsDataSchema: z.ZodObject<{ accounts: z.ZodArray; displayName: z.ZodString; adapterId: z.ZodNullable; mode: z.ZodNullable>; status: z.ZodEnum<{ error: "error"; ok: "ok"; pending: "pending"; "not-configured": "not-configured"; unsupported: "unsupported"; "auth-error": "auth-error"; "rate-limited": "rate-limited"; unavailable: "unavailable"; }>; configured: z.ZodBoolean; fetchedAt: z.ZodNullable; stale: z.ZodBoolean; plan: z.ZodNullable; balance: z.ZodNullable; used: z.ZodNullable; limit: z.ZodNullable; currency: z.ZodNullable; unlimited: z.ZodBoolean; }, z.core.$strict>>; windows: z.ZodArray; label: z.ZodString; unit: z.ZodEnum<{ tokens: "tokens"; requests: "requests"; currency: "currency"; percent: "percent"; unknown: "unknown"; }>; used: z.ZodNullable; remaining: z.ZodNullable; limit: z.ZodNullable; usedRatio: z.ZodNullable; resetsAt: z.ZodNullable; rolling: z.ZodBoolean; }, z.core.$strict>>; missingCredentials: z.ZodArray; warningCode: z.ZodNullable; }, z.core.$strict>>; }, z.core.$strict>; export type AccountsData = z.infer; export declare const UsageAlertSchema: z.ZodObject<{ id: z.ZodString; kind: z.ZodEnum<{ quota: "quota"; cost: "cost"; account: "account"; }>; level: z.ZodEnum<{ info: "info"; warning: "warning"; critical: "critical"; }>; title: z.ZodString; providerId: z.ZodNullable; value: z.ZodNullable; threshold: z.ZodNullable; createdAt: z.ZodNumber; }, z.core.$strict>; export type UsageAlert = z.infer; export declare const AlertsDataSchema: z.ZodObject<{ alerts: z.ZodArray; level: z.ZodEnum<{ info: "info"; warning: "warning"; critical: "critical"; }>; title: z.ZodString; providerId: z.ZodNullable; value: z.ZodNullable; threshold: z.ZodNullable; createdAt: z.ZodNumber; }, z.core.$strict>>; }, z.core.$strict>; export type AlertsData = z.infer; export declare const PricingDataSchema: z.ZodObject<{ baseCurrency: z.ZodString; rules: z.ZodArray>; inputPerMillion: z.ZodNullable; outputPerMillion: z.ZodNullable; cacheReadPerMillion: z.ZodNullable; cacheWritePerMillion: z.ZodNullable; source: z.ZodEnum<{ builtin: "builtin"; user: "user"; imported: "imported"; }>; updatedAt: z.ZodNumber; }, z.core.$strict>>; catalogUpdatedAt: z.ZodNullable; }, z.core.$strict>; export type PricingData = z.infer; export declare const ActivityDaySchema: z.ZodObject<{ date: z.ZodString; tokens: z.ZodNumber; cost: z.ZodNullable; requests: z.ZodNumber; hasData: z.ZodBoolean; }, z.core.$strict>; export declare const ActivityDataSchema: z.ZodObject<{ metric: z.ZodEnum<{ tokens: "tokens"; requests: "requests"; estimatedCost: "estimatedCost"; cacheHitRate: "cacheHitRate"; }>; days: z.ZodArray; requests: z.ZodNumber; hasData: z.ZodBoolean; }, z.core.$strict>>; streak: z.ZodNumber; longestStreak: z.ZodNumber; weekStartsOn: z.ZodUnion, z.ZodLiteral<1>, z.ZodLiteral<6>]>; streakMinTokens: z.ZodNumber; }, z.core.$strict>; export type ActivityData = z.infer; export type ActivityDay = z.infer; export declare const DailyExportRowSchema: z.ZodObject<{ date: z.ZodString; provider: z.ZodString; inputTokens: z.ZodNumber; outputTokens: z.ZodNumber; cacheReadTokens: z.ZodNumber; cacheWriteTokens: z.ZodNumber; requests: z.ZodNumber; estimatedCost: z.ZodNullable; currency: z.ZodString; priceCoverage: z.ZodNumber; }, z.core.$strict>; export type DailyExportRow = z.infer; //# sourceMappingURL=contracts.d.ts.map