import { Constructor } from "@flamework/core/out/utility";
interface TestRunOptions {
    readonly reporter: (testResults: string) => void;
    readonly colors: boolean;
}
declare class TestRunner {
    private readonly testClasses;
    private results;
    private failedTests;
    private passedTests;
    constructor(...roots: Instance[]);
    /**
     * Adds a test class. The class is instantiated when it is added, and any functions on the class are considered tests.
     * The order that the tests are run in is determined by the value provided to the \@Order decorator on the class.
     */
    addClass(ctor: Constructor): void;
    run(options?: Partial<TestRunOptions>): Promise<void>;
    private runTestClass;
    private generateOutput;
    private formatInputs;
    private loadModules;
}
export = TestRunner;
