/// <reference types="node" />
import { Observable } from 'rxjs';
import { Handler } from './handler';
/**
 * This class takes data from an Observer that passes a sequence of buffer corresponding to the
 * bytes in a MATLAB v4 file.  This class parses that binary data and fires calls to a Handler
 * class that can then do with that information what it wishes.
 *
 * The format is documented here:
 *
 * https://www.mathworks.com/help/pdf_doc/matlab/matfile_format.pdf
 */
export declare class MatFile {
    protected source: Observable<Buffer>;
    private state;
    constructor(source: Observable<Buffer>);
    private resetState;
    parse(handler: Handler): Promise<void>;
    /**
     * This method returns false if it cannot process anything else.
     */
    processBuffer(handler: Handler): boolean;
}
