import { Injector } from '@angular/core';
import { services } from 'typescript-angular-utilities';
import __object = services.object;
import __array = services.array;
import * as dataSources from '../dataSources/index';
import { Sorter } from '../sorts/index';
import { CardContainerBuilderOld } from './cardContainerBuilderOld.service';
export interface IDataSourceBuilderOld {
    buildSimpleDataSource<TDataType>(data: TDataType[]): dataSources.IDataSourceOld<TDataType>;
    buildDataServiceDataSource<TDataType>(getDataSet: dataSources.IDataServiceFunction<TDataType>): dataSources.IAsyncDataSource<TDataType>;
    buildClientServerDataSource<TDataType>(getDataSet: dataSources.IDataServiceSearchFunction<TDataType>, getFilterModel?: dataSources.IGetFilterModel<TDataType>, validateModel?: dataSources.IValidateFilterModel<TDataType>): dataSources.IAsyncDataSource<TDataType>;
    buildServerSideDataSource<TDataType>(getDataSet: dataSources.IServerSearchFunctionOld<TDataType>): dataSources.IAsyncDataSource<TDataType>;
    buildSmartDataSource<TDataType>(getDataSet: dataSources.IServerSearchFunctionOld<TDataType>): dataSources.IAsyncDataSource<TDataType>;
    buildCustomDataSource<TDataType>(dataSource: dataSources.IDataSourceOld<TDataType>): dataSources.IDataSourceOld<TDataType>;
}
export declare class DataSourceBuilderOld implements IDataSourceBuilderOld {
    private injector;
    private parent;
    private object;
    private array;
    private sorter;
    constructor(injector: Injector, object: __object.ObjectUtility, array: __array.ArrayUtility, sorter: Sorter);
    init(parent: CardContainerBuilderOld): void;
    buildSimpleDataSource<TDataType>(data: TDataType[]): dataSources.IDataSourceOld<TDataType>;
    buildDataServiceDataSource<TDataType>(getDataSet: dataSources.IDataServiceFunction<TDataType>): dataSources.IAsyncDataSource<TDataType>;
    buildClientServerDataSource<TDataType>(getDataSet: dataSources.IDataServiceFunction<TDataType>, getFilterModel?: dataSources.IGetFilterModel<TDataType>, validateModel?: dataSources.IValidateFilterModel<TDataType>): dataSources.IAsyncDataSource<TDataType>;
    buildServerSideDataSource<TDataType>(getDataSet: dataSources.IServerSearchFunctionOld<TDataType>): dataSources.IAsyncDataSource<TDataType>;
    buildSmartDataSource<TDataType>(getDataSet: dataSources.IServerSearchFunctionOld<TDataType>): dataSources.IAsyncDataSource<TDataType>;
    buildCustomDataSource<TDataType>(dataSource: dataSources.IDataSourceOld<TDataType>): dataSources.IDataSourceOld<TDataType>;
}
