import { compare, lines } from './diff';
export declare class Assertion extends Error {
    name: string;
    code: string;
    details: false | string;
    generated: boolean;
    operator: string;
    expects: any;
    actual: any;
    constructor(opts: {
        message: Message;
        details: string | false;
        generated?: boolean;
        operator: string;
        expects: any;
        actual: any;
    });
}
export declare type Message = string | Error;
declare type AssertProps = [
    bool: boolean,
    actual: any,
    expects: any,
    operator: string,
    detailer: typeof compare | typeof lines | typeof lineNums | false,
    backup: string,
    msg?: Message
];
export declare function assert(...props: AssertProps): void;
export declare function ok(val: any, msg: Message): void;
export declare function is(val: any, exp: any, msg?: Message): void;
export declare namespace is {
    var not: (val: any, exp: any, msg?: Message | undefined) => void;
}
export declare function equal(val: any, exp: any, msg?: Message): void;
export declare function unreachable(msg?: Message): void;
export declare function type(val: any, exp: any, msg: Message): void;
export declare function instance(val: any, exp: any, msg: Message): void;
export declare function match(val: any, exp: any, msg: Message): void;
export declare function snapshot(val: any, exp: any, msg: Message): void;
declare const lineNums: (x: any, y: any) => string;
export declare function fixture(val: any, exp: any, msg: Message): void;
export declare function throws(blk: any, exp: any, msg: Message): void;
export declare function not(val: any, msg: Message): void;
export declare namespace not {
    var ok: typeof not;
    var equal: (val: any, exp: any, msg?: Message | undefined) => void;
    var type: (val: any, exp: any, msg: Message) => void;
    var instance: (val: any, exp: any, msg: Message) => void;
    var snapshot: (val: any, exp: any, msg: Message) => void;
    var fixture: (val: any, exp: any, msg: Message) => void;
    var match: (val: any, exp: any, msg: Message) => void;
    var throws: (blk: any, exp: any, msg: Message) => void;
}
export {};
//# sourceMappingURL=ts-assert.d.ts.map