import { Client } from '@modelcontextprotocol/sdk/client/index.js';
export interface IntegrationTestConfig {
    baseUrl: string;
    apiKey: string;
    llmProvider?: string;
    llmApiToken?: string;
    llmBaseUrl?: string;
}
export declare function getTestConfig(): IntegrationTestConfig;
export declare function hasLLMConfig(): boolean;
export declare function createTestClient(): Promise<Client>;
export declare function cleanupTestClient(client: Client): Promise<void>;
export declare function generateSessionId(): string;
export declare function generateTestUrl(type?: 'simple' | 'dynamic' | 'infinite-scroll' | 'auth'): string;
export interface TestContentItem {
    type: string;
    text?: string;
    data?: string;
    mimeType?: string;
}
export interface TestResult {
    content: TestContentItem[];
}
export interface ToolResult {
    content: TestContentItem[];
    isError?: boolean;
}
export declare function expectSuccessfulCrawl(result: unknown): Promise<void>;
export declare function expectScreenshot(result: unknown): Promise<void>;
export declare function expectExtractedData(result: unknown, expectedKeys: string[]): Promise<void>;
export declare function delay(ms: number): Promise<void>;
export declare function skipIf(condition: boolean, message: string): boolean;
export declare const TEST_TIMEOUTS: {
    short: number;
    medium: number;
    long: number;
    extraLong: number;
};
//# sourceMappingURL=test-utils.d.ts.map