import { PaginatedResponseConfig } from '../../../configs/paginated-response.config';
import { PaginatedRequestConfig } from '../../../configs/paginated-request.config';
import { LoaderConfigurator } from '../loader-configurator';
import { Subject } from 'rxjs';
import { CrudService } from '../../../providers/crud.service';
export interface CanHavePaginatedListLoader<D> {
    service: CrudService<D>;
    requestParams?: PaginatedRequestConfig;
}
declare const PaginatedListLoaderConfigurator_base: import("@angular/material/core/common-behaviors/constructor").Constructor<import("../../../mixins/has-subs.mixin").HasSubs> & {
    new (): {};
};
export declare class PaginatedListLoaderConfigurator<D> extends PaginatedListLoaderConfigurator_base implements LoaderConfigurator<D> {
    protected owner: CanHavePaginatedListLoader<D>;
    data: PaginatedResponseConfig<D>;
    onDataLoaded$: Subject<PaginatedResponseConfig<D>>;
    requestParams: PaginatedRequestConfig;
    constructor(owner: CanHavePaginatedListLoader<D>);
    initLoader(): void;
    loadData(requestParams?: PaginatedRequestConfig): void;
    destroyLoader(): void;
}
export {};
