import { IgRect } from './IgRect';
import { ShapefileConverter as ShapefileConverter_internal } from "./ShapefileConverter";
import { ShapeType } from "./ShapeType";
import { Header } from "./Header";
import { AsyncCompletedEventArgs } from './igc-async-completed-event-args';
import { ShapefileRecord } from './igc-shapefile-record';
/**
 * Class used to convert Shapefiles into CLR objects.
*/
export declare class ShapeDataSource {
    protected createImplementation(): ShapefileConverter_internal;
    protected _implementation: any;
    get i(): ShapefileConverter_internal;
    private onImplementationCreated;
    constructor();
    protected _provideImplementation(i: any): void;
    private _databaseSource;
    /**
     * Gets the string Uri path of the .dbf portion of the Shapefile
    */
    get databaseSource(): string;
    /**
     * Sets the string Uri path of the .dbf portion of the Shapefile
    */
    set databaseSource(v: string);
    private _shapefileSource;
    /**
     * Gets the string Uri path of the .shp portion of the Shapefile
    */
    get shapefileSource(): string;
    /**
     * Sets the string Uri path of the .shp portion of the Shapefile
    */
    set shapefileSource(v: string);
    dataBind(): void;
    /**
    * Gets the point data.
    */
    getPointData(): ShapefileRecord[];
    /**
 * Gets the world bounding rectangle, as read from the header of the Shapefile.
*/
    get worldRect(): IgRect;
    set worldRect(v: IgRect);
    /**
     * Gets the shape type, as read from the header of the Shapefile.
    */
    get shapeType(): ShapeType;
    /**
     * Gets the header of the Shapefile.
    */
    get shapeHeader(): Header;
    set shapeHeader(v: Header);
    private _importCompleted;
    private _importCompleted_wrapped;
    /**
     * Event raised when the Shapefile has been imported from both the ShapefileSource and DatabaseSource Uris.
    */
    get importCompleted(): (s: ShapeDataSource, e: AsyncCompletedEventArgs) => void;
    set importCompleted(ev: (s: ShapeDataSource, e: AsyncCompletedEventArgs) => void);
}
