export type IDSimpleType = string & {
    __idSimpleType: void;
};
export declare const UNIT_TEST_TYPE: IDSimpleType;
declare class ResultFilesType {
    ResultFile?: {
        $path: string;
    }[];
}
export declare class ResultSummary {
    $outcome: string;
    Counters: CountersType;
    constructor(props: ResultSummary);
}
export declare class WorkItemIDsType {
    WorkItem?: {
        $id: string;
    }[];
}
declare abstract class BaseTestType {
    $enabled?: boolean;
    $id: IDSimpleType;
    $name: string;
    $isGroupable?: boolean;
    $priority?: number;
    $namedCategory?: string;
    $storage?: string;
    Description?: string;
    Owners?: {
        Owner: {
            $name: string;
        }[];
    };
    Execution?: {
        $id?: IDSimpleType;
        $parentId?: IDSimpleType;
        isRunOnRestart?: boolean;
        timeOut?: number;
    };
    WorkItemIDs?: WorkItemIDsType;
    constructor(props: BaseTestType);
}
export declare class UnitTestType extends BaseTestType {
    TestMethod: {
        $codeBase: string;
        $className: string;
        $name: string;
        $isValid?: boolean;
        $adapterTypeName?: string;
    };
    constructor(props: UnitTestType);
}
export declare class TestResultType {
    $testName: string;
    $testType: IDSimpleType;
    $testId: IDSimpleType;
    $testListId: IDSimpleType;
    $computerName: string;
    $executionId?: IDSimpleType;
    $outcome?: TestOutcome;
    $startTime?: string;
    $endTime?: string;
    $duration?: string;
    Output?: OutputType;
    ResultFiles?: ResultFilesType;
    constructor(props: TestResultType);
}
export declare class TestResultAggregationType extends TestResultType {
    Counters?: CountersType;
    constructor(props: TestResultAggregationType);
}
export declare class UnitTestResultType extends TestResultAggregationType {
    constructor(props: UnitTestResultType);
}
export declare class TestDefinitionType {
    UnitTest?: UnitTestType[];
    constructor(props: TestDefinitionType);
}
export declare class TestEntryType {
    TestEntries?: TestEntryType[];
    $testId: IDSimpleType;
    $executionId: IDSimpleType;
    $testListId: IDSimpleType;
    constructor(props: TestEntryType);
}
export declare class TestEntriesType {
    TestEntry?: TestEntryType[];
    constructor(props: TestEntriesType);
}
export declare class TestListType {
    $id: IDSimpleType;
    $name: string;
    $enabled?: boolean;
    $parentListId?: IDSimpleType;
    constructor(props: TestListType);
}
export declare class OutputType {
    StdOut?: string;
    StdErr?: string;
    ErrorInfo?: {
        Message?: string;
        StackTrace?: string;
    };
}
export declare class ResultsType {
    UnitTestResult?: UnitTestResultType[];
    constructor(props: ResultsType);
}
export declare class Times {
    $creation: string;
    $queuing?: string;
    $start?: string;
    $finish?: string;
    constructor(props: Times);
}
export declare class TestRunType {
    $id: IDSimpleType;
    $name: string;
    $runUser?: string;
    private readonly $xmlns?;
    Times?: Times;
    Results?: ResultsType;
    TestDefinitions?: TestDefinitionType;
    TestEntries?: TestEntriesType;
    TestLists?: {
        TestList?: TestListType[];
    };
    ResultSummary?: ResultSummary;
    constructor(props: TestRunType);
}
export declare enum TestOutcome {
    Error = "Error",
    Failed = "Failed",
    Timeout = "Timeout",
    Aborted = "Aborted",
    Inconclusive = "Inconclusive",
    PassedButRunAborted = "PassedButRunAborted",
    NotRunnable = "NotRunnable",
    NotExecuted = "NotExecuted",
    Disconnected = "Disconnected",
    Warning = "Warning",
    Passed = "Passed",
    Completed = "Completed",
    InProgress = "InProgress",
    Pending = "Pending"
}
export declare class CountersType {
    $total: number;
    $executed: number;
    $passed: number;
    $failed: number;
    $error: number;
    $timeout: number;
    $aborted: number;
    $inconclusive: number;
    $passedButRunAborted: number;
    $notRunnable: number;
    $notExecuted: number;
    $disconnected: number;
    $warning: number;
    $completed: number;
    $inProgress: number;
    $pending: number;
    $value?: string;
}
export {};
