import { Observable, Observer_Interface, Observer_Props, Observer_Type } from "../core/observer";
import { IO_Observable_Reader_Interface } from "./types";
export interface CSV_IO_Props_Interface {
    path: string;
    delimiter: string;
    columns: boolean;
    quote: string;
    relax_quotes: boolean;
    skip_records_with_error: boolean;
    trim: boolean;
}
export declare class CSV_IO_Reader<D> implements IO_Observable_Reader_Interface<D>, Observable<D> {
    private observer_subject;
    private props;
    constructor(props: CSV_IO_Props_Interface);
    add_observer(observer: Observer_Interface<D>, id: Observer_Type): void;
    notify_all(props: Observer_Props<D>): void;
    notify(props: Observer_Props<D>): void;
    read(): void;
    private static cleanup;
}
