import { iLogItem, iConsoleLine, iAssertionResult } from "../interfaces";
import { LineType } from "../enums";
import { LogItem } from "./logitem";
export declare abstract class AssertionResult extends LogItem implements iLogItem, iAssertionResult {
    abstract readonly type: LineType;
    abstract className: string;
    abstract toConsole(): iConsoleLine[];
    protected _rawDetails: any;
    protected _sourceCode: any;
    protected _highlight: string;
}
export declare class AssertionPass extends AssertionResult implements iLogItem {
    readonly type: LineType;
    readonly className: string;
    get passed(): boolean;
    constructor(message: string);
    toConsole(): iConsoleLine[];
}
export declare class AssertionActionCompleted extends AssertionPass {
    readonly type: LineType;
    protected _verb: string;
    protected _noun: string;
    constructor(verb: string, noun: string);
    toConsole(): iConsoleLine[];
}
export declare class AssertionFail extends AssertionResult implements iLogItem {
    readonly type: LineType;
    readonly className: string;
    get failed(): boolean;
    constructor(message: string, errorDetails: any, sourceCode?: any, highlight?: string);
    get isDetails(): boolean;
    get sourceCode(): string;
    get detailsMessage(): string[];
    toConsole(): iConsoleLine[];
    toHtml(): string;
}
export declare class AssertionFailOptional extends AssertionFail implements iLogItem {
    readonly type: LineType;
    readonly className: string;
    get isOptional(): boolean;
    toConsole(): iConsoleLine[];
}
export declare class AssertionFailWarning extends AssertionFail implements iLogItem {
    readonly type: LineType;
    readonly className: string;
    get isOptional(): boolean;
    toConsole(): iConsoleLine[];
}
export declare class AssertionActionFailed extends AssertionPass implements iLogItem {
    readonly type: LineType;
    protected _verb: string;
    protected _noun: string;
    constructor(verb: string, noun: string);
    toConsole(): iConsoleLine[];
}
