import { type Expr } from "./expr";
export declare const DEFAULT_TEST_BATCH_SIZE = 100;
export interface TestDeclaration {
    name: string;
    bodyExpr: Expr;
    filePath: string;
    lineNumber: number;
}
export interface ExtractTestsResult {
    tests: TestDeclaration[];
    nonTestExprs: Expr[];
}
export interface TestResult {
    testName: string;
    filePath: string;
    passed: boolean;
    errorMessage?: string;
    duration: number;
    profileInfo?: string;
}
export interface TestRunSummary {
    totalTests: number;
    passed: number;
    failed: number;
    skipped: number;
    results: TestResult[];
    duration: number;
}
export declare function findTestFiles(targetPath: string): string[];
export declare function extractTests(filePath: string): ExtractTestsResult;
export declare function runTests(testFiles: string[], options?: {
    cCompiler?: string;
    target?: string;
    verbose?: boolean;
    bail?: boolean;
    testNamePattern?: string;
    parallel?: number;
    keepGeneratedFiles?: boolean;
    profile?: boolean;
    noSanitize?: boolean;
    testBatchSize?: number;
}): Promise<TestRunSummary>;
