import { OnDestroy, OnInit } from "@angular/core";
import { RolesObject, UserListItem, UserListService } from "../../../../user/services/user-list.service";
import { FormControl } from "@angular/forms";
import { CdkVirtualScrollViewport } from "@angular/cdk/scrolling";
import { UserValue } from "../../../../data-fields/user-field/models/user-value";
import * as i0 from "@angular/core";
export declare abstract class AbstractBaseUserAssignListComponent implements OnInit, OnDestroy {
    protected _userListService: UserListService;
    protected SEARCH_DEBOUNCE_TIME: number;
    searchUserControl: FormControl;
    roles: RolesObject | Array<string>;
    negativeRoles: RolesObject | Array<string>;
    viewport: CdkVirtualScrollViewport;
    constructor(_userListService: UserListService);
    ngOnInit(): void;
    abstract ngOnDestroy(): any;
    abstract select(selectedUser: UserListItem): any;
    trackBy(index: number, item: UserValue): any;
    get loading(): boolean;
    loadNextPage(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<AbstractBaseUserAssignListComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<AbstractBaseUserAssignListComponent, "ncc-base-user-assign-list", never, { "searchUserControl": { "alias": "searchUserControl"; "required": false; }; "roles": { "alias": "roles"; "required": false; }; "negativeRoles": { "alias": "negativeRoles"; "required": false; }; }, {}, never, never, false, never>;
}
