import { HttpClient } from 'aurelia-fetch-client';
import { FluentRuleCustomizer } from 'aurelia-validation';
import { User } from "./../../../model/common-model";
import { RolesMode } from './../../../constants/constants';
import { IMenuItems } from './../../../ui/menu/ui-menus';
import { EntityDetailViewModelBase } from './../../../vm/detail-view-model-base';
export declare abstract class UserDetailBase<T extends User> extends EntityDetailViewModelBase<T> {
    protected rolesMode: RolesMode;
    ressourceName: string;
    protected httpClient: HttpClient;
    protected menuItems: Array<IMenuItems>;
    constructor(rolesMode: RolesMode, ressourceName?: string);
    protected getTranslationKeyEntityTypeName(): string;
    protected getResetPasswordUrl(): string;
    protected activateExpands(): string[];
    protected activateQueryParameters(): object;
    protected getValidationRules(): FluentRuleCustomizer<unknown, any>;
    activate(params: any): Promise<void>;
    get documentTitle(): string;
    protected resetPassword(): Promise<void>;
    protected updateUsername(): Promise<void>;
    save(silentSave?: boolean, byPassLocking?: boolean, navigateBack?: boolean): Promise<void>;
}
