import { Tool } from '@modelcontextprotocol/sdk/types.js';
import { SearchService } from '../services/search/index.js';
import { IClaudeService } from '../services/claude/IClaudeService.js';
import winston from 'winston';
export interface SampleToolArgs {
    domain: string;
    sampleSize?: number;
    maxRequestsPerSecond?: number;
}
export interface SampleAnalysis {
    positioning: string;
    toneOfVoice: string;
    contentStrategy: string;
    keyThemes: string[];
    writingStyle: string;
    targetAudience: string;
}
export interface SampleResult {
    domain: string;
    sampleSize: number;
    posts: Array<{
        title: string;
        url: string;
        publishedDate?: string;
        author?: string;
        excerpt?: string;
    }>;
    analysis: SampleAnalysis;
    timestamp: string;
}
export declare class SampleTool {
    private readonly logger;
    private readonly searchService;
    constructor(searchService: SearchService, logger?: winston.Logger);
    getToolDefinition(): Tool;
    execute(args: SampleToolArgs, claudeService: IClaudeService): Promise<string>;
    private validatePostgenDirectory;
    private analyzeContent;
    private buildAnalysisPrompt;
    private parseAnalysisResponse;
    private saveResults;
    private formatResponse;
}
//# sourceMappingURL=SampleTool.d.ts.map