/// <reference types="jest" />
import { Message } from '../utils/Types';
import CustomMatcherResult = jest.CustomMatcherResult;
export declare class Match<S> {
    private readonly subject;
    private readonly failed;
    private readonly message;
    constructor(subject: S, failed?: boolean, message?: Message<S>);
    not(p: (s: S) => boolean, message: Message<S>): Match<S>;
    undefined(p: (s: S) => any, message: Message<S>): Match<S>;
    else(message: Message<S>): CustomMatcherResult;
}
export declare const match: <S>(subject: S) => Match<S>;
