import { IUserPermissionServiceSettings } from './user-permission-service-settings.interface'; import { Observable } from 'rxjs'; import { ITnfUser } from './tnf/tnf.index'; import { QueryFilter } from './../../../entities/entities.index'; /** * Interface com os métodos de permissão do usuário */ export interface IUserPermission { /** * Método que realiza a requisição http para o endpoint de listagem de usuários * @param queryFilter Filtros para serem utilizados em query para banco de dados */ getAllUsers(queryFilter?: QueryFilter): Observable; /** * Método que realiza a requisição http para o endpoint de busca de um usuário * @param userId Identificador do usuário */ getUser(userId: number): Observable; /** * Método que realiza a requisição http para o endpoint de busca de informações do usuário logado */ getUserInfo(): Observable; /** * Método que permite a alteração das configurações do serviço de permissão de usuários * indicando URLs diferentes para os endpoints * @param settings Configurações */ changeSettings(settings: IUserPermissionServiceSettings): Promise; }