/** * Cost Calculator * * Functions for calculating costs of API operations. * All costs are calculated in micro-dollars for precision. */ import type { MeteredResource, MicroDollars, Provider, UsageRecord } from './types'; /** * Convert micro-dollars to cents. * 1 cent = 10,000 micro-dollars */ export declare function microsToCents(micros: MicroDollars): number; /** * Convert cents to micro-dollars. */ export declare function centsToMicros(cents: number): MicroDollars; /** * Convert micro-dollars to dollars. */ export declare function microsToDollars(micros: MicroDollars): number; /** * Format micro-dollars as a dollar string. */ export declare function formatMicrosAsDollars(micros: MicroDollars): string; /** * Calculate cost for AI model input tokens. */ export declare function calculateAIInputCost(model: string, tokenCount: number): MicroDollars; /** * Calculate cost for AI model output tokens. */ export declare function calculateAIOutputCost(model: string, tokenCount: number): MicroDollars; /** * Calculate total cost for an AI completion. */ export declare function calculateAICompletionCost(model: string, inputTokens: number, outputTokens: number): MicroDollars; /** * Create a usage record for an AI completion. */ export declare function createAIUsageRecords(model: string, inputTokens: number, outputTokens: number, metadata?: Record): UsageRecord[]; /** * Calculate cost for embedding tokens. */ export declare function calculateEmbeddingCost(model: string, tokenCount: number): MicroDollars; /** * Create a usage record for embeddings. */ export declare function createEmbeddingUsageRecord(model: string, tokenCount: number, metadata?: Record): UsageRecord; /** * Calculate cost for Google Places lookup. */ export declare function calculatePlacesLookupCost(requestCount: number): MicroDollars; /** * Calculate cost for Google Geocoding. */ export declare function calculateGeocodingCost(requestCount: number): MicroDollars; /** * Create a usage record for geocoding. */ export declare function createGeocodingUsageRecord(type: 'places' | 'geocoding', requestCount: number, metadata?: Record): UsageRecord; /** * Calculate cost for Google Programmable Search API. * Pricing: $5.00 per 1,000 queries ($0.005 per query). */ export declare function calculateGoogleSearchCost(queryCount: number): MicroDollars; /** * Create a usage record for Google Search. */ export declare function createGoogleSearchUsageRecord(queryCount: number, metadata?: Record): UsageRecord; /** * Calculate cost for Google Places photo. */ export declare function calculatePlacesPhotoCost(requestCount: number): MicroDollars; /** * Calculate cost for Pixabay search (free). */ export declare function calculatePixabayCost(_requestCount: number): MicroDollars; /** * Calculate cost for Pexels search (free). */ export declare function calculatePexelsCost(_requestCount: number): MicroDollars; /** * Create a usage record for image fetching. */ export declare function createImageUsageRecord(provider: 'google_places' | 'pixabay' | 'pexels', requestCount: number, metadata?: Record): UsageRecord; /** * Sum costs from multiple usage records. */ export declare function sumUsageCosts(records: UsageRecord[]): MicroDollars; /** * Group usage records by resource type. */ export declare function groupByResource(records: UsageRecord[]): Record; /** * Group usage records by provider. */ export declare function groupByProvider(records: UsageRecord[]): Record; //# sourceMappingURL=calculator.d.ts.map