import { z } from 'zod/v4';
import type { AuditReport } from '../models/AuditReport';
import type { ToolCallContext } from '../models/ToolCallContext';
import type { ToolCallResult } from '../models/ToolCallResult';
import { Tool } from './Tool';
export declare const AuditCoreSchema: z.ZodObject<{
    url: z.ZodOptional<z.ZodString>;
    pageLoad: z.ZodOptional<z.ZodObject<{
        enabled: z.ZodOptional<z.ZodBoolean>;
        assertion: z.ZodOptional<z.ZodString>;
        retries: z.ZodOptional<z.ZodNumber>;
        retryDelaySeconds: z.ZodOptional<z.ZodNumber>;
        waitUntil: z.ZodOptional<z.ZodEnum<{
            load: "load";
            domcontentloaded: "domcontentloaded";
            networkidle: "networkidle";
            commit: "commit";
        }>>;
    }, z.core.$strip>>;
    accessibility: z.ZodOptional<z.ZodObject<{
        enabled: z.ZodOptional<z.ZodBoolean>;
    }, z.core.$strip>>;
    uniqueIds: z.ZodOptional<z.ZodObject<{
        enabled: z.ZodOptional<z.ZodBoolean>;
    }, z.core.$strip>>;
    uniqueTestIds: z.ZodOptional<z.ZodObject<{
        enabled: z.ZodOptional<z.ZodBoolean>;
        attributes: z.ZodOptional<z.ZodArray<z.ZodString>>;
    }, z.core.$strip>>;
    consoleErrors: z.ZodOptional<z.ZodObject<{
        enabled: z.ZodOptional<z.ZodBoolean>;
        ignore: z.ZodOptional<z.ZodArray<z.ZodString>>;
    }, z.core.$strip>>;
    networkErrors: z.ZodOptional<z.ZodObject<{
        enabled: z.ZodOptional<z.ZodBoolean>;
        ignore: z.ZodOptional<z.ZodArray<z.ZodString>>;
    }, z.core.$strip>>;
}, z.core.$strip>;
export declare const AuditGptSchema: z.ZodObject<{
    url: z.ZodOptional<z.ZodString>;
    pageLoad: z.ZodOptional<z.ZodObject<{
        enabled: z.ZodOptional<z.ZodBoolean>;
        assertion: z.ZodOptional<z.ZodString>;
        retries: z.ZodOptional<z.ZodNumber>;
        retryDelaySeconds: z.ZodOptional<z.ZodNumber>;
        waitUntil: z.ZodOptional<z.ZodEnum<{
            load: "load";
            domcontentloaded: "domcontentloaded";
            networkidle: "networkidle";
            commit: "commit";
        }>>;
    }, z.core.$strip>>;
    accessibility: z.ZodOptional<z.ZodObject<{
        enabled: z.ZodOptional<z.ZodBoolean>;
    }, z.core.$strip>>;
    uniqueIds: z.ZodOptional<z.ZodObject<{
        enabled: z.ZodOptional<z.ZodBoolean>;
    }, z.core.$strip>>;
    uniqueTestIds: z.ZodOptional<z.ZodObject<{
        enabled: z.ZodOptional<z.ZodBoolean>;
        attributes: z.ZodOptional<z.ZodArray<z.ZodString>>;
    }, z.core.$strip>>;
    consoleErrors: z.ZodOptional<z.ZodObject<{
        enabled: z.ZodOptional<z.ZodBoolean>;
        ignore: z.ZodOptional<z.ZodArray<z.ZodString>>;
    }, z.core.$strip>>;
    networkErrors: z.ZodOptional<z.ZodObject<{
        enabled: z.ZodOptional<z.ZodBoolean>;
        ignore: z.ZodOptional<z.ZodArray<z.ZodString>>;
    }, z.core.$strip>>;
    rationale: z.ZodString;
}, z.core.$strip>;
export type AuditCoreSchemaType = z.infer<typeof AuditCoreSchema>;
type AuditParams = AuditCoreSchemaType;
export declare class AuditTool extends Tool<typeof AuditCoreSchema, typeof AuditGptSchema> {
    static readonly NAME = "audit";
    constructor();
    call(context: ToolCallContext, parameters: AuditParams): Promise<ToolCallResult>;
    callFromGpt(context: ToolCallContext, parameters: z.infer<typeof AuditGptSchema>): Promise<ToolCallResult>;
}
export declare function runAudit(context: ToolCallContext, params: AuditParams): Promise<AuditReport>;
export {};
//# sourceMappingURL=AuditTool.d.ts.map