/** SDK-owned platform module. This implementation is maintained in goodvibes-sdk. */ /** Cache capability types for LLM providers. */ export type CacheType = 'explicit' | 'automatic' | 'implicit' | 'none'; export interface ExplicitCacheCapability { type: 'explicit'; maxBreakpoints: number; ttlOptions: Array<{ label: string; seconds: number; writeCostMultiplier: number; }>; readDiscount: number; minCacheableTokens: number; } export interface AutomaticCacheCapability { type: 'automatic'; readDiscount: number; sessionAffinityHeader?: string; } export interface ImplicitCacheCapability { type: 'implicit'; keepAliveParam?: string; defaultKeepAliveSeconds?: number | undefined; } export interface NoCacheCapability { type: 'none'; } export type ProviderCacheCapability = ExplicitCacheCapability | AutomaticCacheCapability | ImplicitCacheCapability | NoCacheCapability; /** * Get the cache capability for a provider. * Returns 'none' for unknown providers. */ export declare function getCacheCapability(providerName: string): ProviderCacheCapability; /** * Check if a provider supports any form of caching. * * @remarks Intentionally exported for future consumers such as UI display * components and config validation that need a simple boolean check. */ export declare function supportsCaching(providerName: string): boolean; /** Get the best TTL option for stable content (system prompt + tools). */ export declare function getStableTtl(cap: ProviderCacheCapability): { label: string; seconds: number; } | null; /** Get the default (shortest) TTL for dynamic content. */ export declare function getDynamicTtl(cap: ProviderCacheCapability): { label: string; seconds: number; } | null; //# sourceMappingURL=cache-capability.d.ts.map