///
import IClientModule from "../client/IClientModule";
import IChat from "../chat/IChat";
export default interface IUserController extends IClientModule {
/** Bloqueia o usuário */
blockUser(): Promise;
/** Desbloqueia o usuário */
unblockUser(): Promise;
/** @returns Retorna o nome do usuário */
getName(): Promise;
/**
* Define o nome do usuário
* @param name Nome do usuáro
*/
setName(name: string): Promise;
/** @returns Retorna a descrição do usuário */
getDescription(): Promise;
/**
* Define a descrição do usuário
* @param description Descrição do usuário
*/
setDescription(description: string): Promise;
/** @returns Retorna a imagem de perfil do usuário */
getProfile(): Promise;
/**
* Define a foto de perfil do usuário
* @param image Foto de perfil do usuário
*/
setProfile(image: Buffer): Promise;
/**
* @param chat Sala de bate-papo que está o usuário
* @returns Retorna se o usuário é administrador daquela sala de bate-papo
*/
isAdmin(chat: IChat | string): Promise;
/**
* @param chat Sala de bate-papo que está o usuário
* @returns Retorna se o usuário é lider daquela sala de bate-papo
*/
isLeader(chat: IChat | string): Promise;
}