import { OnInit } from '@angular/core';
import { User } from './user.model';
import { CurrentUserService } from './current-user.service';
import { MatDialog } from '@angular/material/dialog';
import { UserService } from './user.service';
import { MultiUserConfig, UserConfigService } from '../user-config';
import { UntypedFormBuilder } from '@angular/forms';
import { Sort } from '@angular/material/sort';
import { PageEvent } from '../data-table';
import { AlertService, HttpService } from '../core';
import { RequestHelperService } from '../request-helper/request-helper.service';
import { TechlifyListingControllerInterface } from '../base-model';
import { ActivatedRoute } from '@angular/router';
import * as i0 from "@angular/core";
export declare class UsersViewAllComponent extends TechlifyListingControllerInterface implements OnInit {
    private http;
    private alertService;
    currentUserService: CurrentUserService;
    userConfigService: UserConfigService;
    private dialog;
    private userService;
    private fb;
    private requestHelperService;
    private activatedRoute;
    clientId: number;
    userTypeIds: number[];
    currentUser: User;
    isWorking: boolean;
    config: MultiUserConfig;
    user: User;
    title: string;
    pageEvent: PageEvent;
    displayedColumns: string[];
    scrollContainer: string;
    models: any[];
    constructor(http: HttpService, alertService: AlertService, currentUserService: CurrentUserService, userConfigService: UserConfigService, dialog: MatDialog, userService: UserService, fb: UntypedFormBuilder, requestHelperService: RequestHelperService, activatedRoute: ActivatedRoute);
    ngOnInit(): void;
    private createForm;
    loadData(): void;
    createOrEditUser(user?: any): void;
    deleteUser(user: any): void;
    /**
     * Handle the sort change event.
     * @param sort Sort
     */
    onSortChange(sort: Sort): void;
    reload(): void;
    onScroll(): void;
    /**
     * Get the user type for the current client.
     *
     * @param user User
     */
    getUserType(user: any): string;
    resetPassword(user: any): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<UsersViewAllComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<UsersViewAllComponent, "app-users-view-all", never, { "clientId": { "alias": "clientId"; "required": false; }; "userTypeIds": { "alias": "userTypeIds"; "required": false; }; "title": { "alias": "title"; "required": false; }; }, {}, never, never, false, never>;
}
