import { HttpClient } from '@angular/common/http';
import { BaseApiTemplateService } from '../shared/base-api-template-service.model';
import { AppLoginContainerModel } from '../../../../../models/aggregates/id';
import { app_login_subject_RowClass } from '../../../../../models/dbschema/app_login_subject.model';
import { Observable } from 'rxjs';
import { ApiResponseModel, ApiVisa, BasicApiResponseModel, Pagination, PagingResponseModel } from '../shared';
export declare class UserEmailRespond {
    email: string[];
}
export declare class TenantUserService extends BaseApiTemplateService<AppLoginContainerModel> {
    readonly url: string;
    constructor(http: HttpClient);
    /** File Attachment related */
    addUser(value: string, body: any, visa: ApiVisa): Observable<ApiResponseModel<app_login_subject_RowClass>>;
    addUserAsSysadmin(value: string, body: any, visa: ApiVisa): Observable<ApiResponseModel<app_login_subject_RowClass>>;
    validateUserAsSysadmin(type: string, value: string, body: any, visa: ApiVisa): Observable<ApiResponseModel<app_login_subject_RowClass>>;
    getByCriteriaAsTenantAdmin(pagination: Pagination, apiVisa: ApiVisa): Observable<PagingResponseModel<AppLoginContainerModel>>;
    getByGuidAsTenantAdmin(guid: String, apiVisa: ApiVisa): Observable<BasicApiResponseModel<AppLoginContainerModel>>;
    searchByUserEmail(searchWord: string, apiVisa: ApiVisa): Observable<BasicApiResponseModel<UserEmailRespond>>;
    searchByUserID(searchWord: string, apiVisa: ApiVisa): Observable<BasicApiResponseModel<UserEmailRespond>>;
    getByCriteriaAsTenantAdminCustomRoles(pagination: Pagination, apiVisa: ApiVisa): Observable<PagingResponseModel<any>>;
}
