import { Observable } from 'rxjs';
import { QdTableStoreService } from '../store/table-store.service';
import { QdTableConfigSelectionType } from '../model/table-config-actions.interface';
import { QdTableConfig } from '../model/table-config.interface';
import { QdTableRowIndex } from '../model/table-data.interface';
import { QdTableSelectedRows } from '../model/table-row-selection.interface';
import * as i0 from "@angular/core";
export declare class QdTableRowSelectionService<T extends string> {
    private readonly tableStoreService;
    private _config;
    private _selectedRows;
    constructor(tableStoreService: QdTableStoreService<T>);
    set config(config: QdTableConfig<T>);
    get tableId(): QdTableConfig<T>['uid'];
    get selectionType(): QdTableConfigSelectionType;
    get selectedRows$(): Observable<QdTableSelectedRows<T>>;
    private isRowSelected;
    private getIndexedRows;
    isRowSelected$(rowIndex: QdTableRowIndex): Observable<boolean>;
    setRowSelected(rowIndex: QdTableRowIndex): void;
    setRowUnselected(rowIndex: QdTableRowIndex): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<QdTableRowSelectionService<any>, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<QdTableRowSelectionService<any>>;
}
//# sourceMappingURL=row-selection.service.d.ts.map