import { OnInit, ElementRef, EventEmitter } from '@angular/core';
import { UserAutocompleteService } from './user-autocomplete.service';
import { UntypedFormControl } from '@angular/forms';
import { TFetchStatus, ConfigurationsService } from '@sunbird-cb/utils-v2';
import { NsAutoComplete } from './user-autocomplete.model';
import { MatLegacyAutocompleteSelectedEvent as MatAutocompleteSelectedEvent } from '@angular/material/legacy-autocomplete';
import { MatLegacySnackBar as MatSnackBar } from '@angular/material/legacy-snack-bar';
import * as i0 from "@angular/core";
export declare class UserAutocompleteComponent implements OnInit {
    private matSnackBar;
    private userAutocompleteSvc;
    private configSvc;
    separatorKeysCodes: number[];
    userFormControl: UntypedFormControl;
    selectedUsers: NsAutoComplete.IUserAutoComplete[];
    autocompleteAllUsers: NsAutoComplete.IUserAutoComplete[];
    tagsFromConversation: any[];
    fetchTagsStatus: TFetchStatus | undefined;
    userId: string;
    allowSelfAutocomplete: boolean;
    autocompleteByDepartment: boolean;
    departments: any[];
    userInputFormRef: ElementRef<HTMLInputElement>;
    usersList: EventEmitter<NsAutoComplete.IUserAutoComplete[]>;
    addedUser: EventEmitter<NsAutoComplete.IUserAutoComplete>;
    removedUser: EventEmitter<NsAutoComplete.IUserAutoComplete>;
    constructor(matSnackBar: MatSnackBar, userAutocompleteSvc: UserAutocompleteService, configSvc: ConfigurationsService);
    ngOnInit(): void;
    removeUser(user: NsAutoComplete.IUserAutoComplete): void;
    selectUser(event: MatAutocompleteSelectedEvent, duplicateMsg: string, selfShareMsg: string): void;
    private openSnackBar;
    static ɵfac: i0.ɵɵFactoryDeclaration<UserAutocompleteComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<UserAutocompleteComponent, "ws-widget-user-autocomplete", never, { "allowSelfAutocomplete": { "alias": "allowSelfAutocomplete"; "required": false; }; "autocompleteByDepartment": { "alias": "autocompleteByDepartment"; "required": false; }; "departments": { "alias": "departments"; "required": false; }; }, { "usersList": "usersList"; "addedUser": "addedUser"; "removedUser": "removedUser"; }, never, never, false, never>;
}
//# sourceMappingURL=user-autocomplete.component.d.ts.map