import { type UsageRecord, type UsageRecordStatus, type UsageStore } from "@pie-lab/storage";
export interface GatewayAudioUsageContext {
    requestId?: string;
    clientOrigin?: string;
    endpoint?: string;
    agentRunId?: string;
    now?: () => Date;
}
export interface GatewayAudioUsageInput {
    usageStore?: UsageStore;
    context?: GatewayAudioUsageContext;
    kind: "stt" | "tts";
    provider: string;
    model: string;
    providerEndpoint: string;
    status: UsageRecordStatus;
    errorMessage?: string;
    errorCode?: string | number;
    inputBytes?: number;
    outputBytes?: number;
    inputChars?: number;
    audioSeconds?: number;
}
export declare function createGatewayAudioUsageRecord(input: GatewayAudioUsageInput): UsageRecord | undefined;
export declare function recordGatewayAudioUsage(input: GatewayAudioUsageInput): Promise<UsageRecord | undefined>;
export declare function textLengthForAudioUsage(text: string): number;
export declare function detectWavDurationSeconds(data: Uint8Array): number | undefined;
//# sourceMappingURL=audio-usage.d.ts.map