import { RVDataSourceItem } from "./RVDataSourceItem";
import { RVDashboardDataSource } from "./RVDashboardDataSource";
import { nullableString } from "../types";
/**
 * The base item class used to represent a dataset from one of the supported database systems.
 */
export declare abstract class RVSqlBasedDataSourceItem extends RVDataSourceItem {
    /** @hidden */
    constructor(json: any);
    constructor(dataSource: RVDashboardDataSource);
    /** @hidden */
    toJson(): any;
    private _database;
    /**
     * Name of the database to connect to, optional as this value is usually specified in the data source object.
     */
    get database(): nullableString;
    set database(value: nullableString);
    private _table;
    /**
     * Name of the table (or view) to get data from
     */
    get table(): nullableString;
    set table(value: nullableString);
    private _customQuery;
    /**
     * (Optional) Custom SQL query to use when getting data
     */
    get customQuery(): nullableString;
    set customQuery(value: nullableString);
    /** @hidden */
    _getWrapper(): any;
}
