import { OpenAIUsageCostBasis, OpenAIUsageSource, OpenAIUsageSurface } from '../models/openai-usage-ledger.model';
export { estimateOpenAIUsageCost, OpenAIUsagePricingConfig } from '../util/openai-usage-cost';
export interface OpenAIUsageRecordInput {
    id_client?: string;
    model: string;
    input_tokens: number;
    cached_input_tokens?: number;
    output_tokens: number;
    total_tokens: number;
    billable?: boolean;
    category?: string;
    id_request?: string;
    id_conversation?: string;
    timestamp?: Date;
    cost_estimate?: number;
    usage_source?: OpenAIUsageSource | string;
    usage_surface?: OpenAIUsageSurface | string;
    usage_phase?: string;
    cost_basis?: OpenAIUsageCostBasis | string;
    id_run?: string;
    id_job?: string;
    id_app?: string;
    id_ticket?: string;
    is_manual?: boolean;
    is_untracked?: boolean;
    untracked_reason?: string;
    metadata?: Record<string, any>;
}
export declare function recordOpenAIUsage(input: OpenAIUsageRecordInput): Promise<void>;
export declare function recordManualCodexUsageEstimate(input: Omit<OpenAIUsageRecordInput, 'usage_source' | 'is_manual'>): Promise<void>;
