import * as i0 from '@angular/core';
import { OnChanges, SimpleChanges } from '@angular/core';
import { NgDocDataListComponent } from '@ng-doc/ui-kit/components/data-list';
import { NgDocContextWithImplicit } from '@ng-doc/ui-kit/interfaces';
import { NgDocGroupFn, NgDocContent } from '@ng-doc/ui-kit/types';

declare class NgDocDataListGroupComponent<T, G> extends NgDocDataListComponent<T> implements OnChanges {
    itemGroupFn?: NgDocGroupFn<T, G>;
    groupContent: NgDocContent<NgDocContextWithImplicit<G>>;
    groups: Map<G, T[]>;
    groupItems: G[];
    getGroupContext($implicit: G): NgDocContextWithImplicit<G>;
    ngOnChanges({ items, itemGroupFn }: SimpleChanges): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<NgDocDataListGroupComponent<any, any>, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<NgDocDataListGroupComponent<any, any>, "ng-doc-data-list-group", never, { "itemGroupFn": { "alias": "itemGroupFn"; "required": false; }; "groupContent": { "alias": "groupContent"; "required": false; }; }, {}, never, never, true, never>;
}

export { NgDocDataListGroupComponent };
