/**
 * AWS Bedrock Provider
 *
 * Implements LLMProvider interface for AWS Bedrock models.
 * Supports Claude, Titan, and other Bedrock models.
 *
 * Best for: AWS-native environments, existing AWS infrastructure
 *
 * NOTE: Requires @aws-sdk/client-bedrock-runtime
 */
import type { LLMProvider, AnalyzeOptions, AnalyzeResult, StructuredOptions } from '../types.js';
import { Logger } from '../../../utils/logger.js';
export interface BedrockProviderConfig {
    region?: string;
    model?: string;
    maxTokens?: number;
    temperature?: number;
    logger?: Logger;
}
export declare class BedrockProvider implements LLMProvider {
    readonly name: "bedrock";
    readonly defaultModel: string;
    private region;
    private maxTokens;
    private temperature;
    private logger;
    private client;
    constructor(config: BedrockProviderConfig);
    private getClient;
    analyze(prompt: string, options?: AnalyzeOptions): Promise<AnalyzeResult>;
    analyzeStructured<T>(prompt: string, options: StructuredOptions<T>): Promise<{
        data: T;
        usage: AnalyzeResult['usage'];
        estimatedCost: number;
    }>;
    estimateCost(inputTokens: number, outputTokens: number, model?: string): number;
    private getPricing;
    isAvailable(): Promise<boolean>;
    getStatus(): Promise<{
        available: boolean;
        latencyMs?: number;
        error?: string;
    }>;
}
//# sourceMappingURL=bedrock-provider.d.ts.map