import { DataSource, DataSourceOptions, DataSourcePayload } from './data-source.types';
export declare abstract class BaseDataSource implements DataSource {
    data: any[];
    protected constructor(data: any[]);
    abstract fetchData(options: DataSourceOptions): Promise<DataSourcePayload>;
    abstract load(options: DataSourceOptions): Promise<DataSourcePayload>;
    abstract paginate(options: DataSourceOptions, data?: Promise<DataSourcePayload>): Promise<DataSourcePayload>;
    abstract sort(options: DataSourceOptions, data?: Promise<DataSourcePayload>): Promise<DataSourcePayload>;
    /**
     * Editing
     */
    patch(options: DataSourceOptions): Promise<DataSourcePayload>;
    create(data: any): void;
    delete(data: any): void;
    update(data: any, options: DataSourceOptions): void;
}
