/**
 * Zalo Personal Friend Management Service
 * 100% khớp với automation-web/src/module/zalo-friend
 * Đã hợp nhất DTOs và Service class trong 1 file duy nhất
 */
import { HttpClient } from '../../utils/http.utils';
import { AutomationWebResponse } from '../../types/common.types';
import { GetAllFriendsDto, SearchFriendsDto, GetFriendsInfoDto, GetOnlineFriendsDto, SendFriendRequestDto, AcceptFriendRequestDto, GetReceivedFriendRequestsDto, GetSentFriendRequestsDto, UndoFriendRequestDto, RemoveFriendDto, FindUserDto, BlockUserDto, UnblockUserDto, ChangeFriendAliasDto, RemoveFriendAliasDto, GetAliasListDto, GetLastOnlineDto, GetOwnIdDto, FetchAccountInfoDto, GetAllFriendsResponseDto, SearchFriendsResponseDto, OperationResultDto, GetReceivedFriendRequestsResponseDto, GetSentFriendRequestsResponseDto, FindUserResponseDto, GetLastOnlineResponseDto, GetOwnIdResponseDto, FetchAccountInfoResponseDto, FriendStats, GetOnlineFriendsResponse, GetFriendsInfoResponse } from '../../types/dto/friends.type';
/**
 * Zalo Personal Friend Management Service Class
 * 100% khớp với automation-web ZaloFriendController
 */
export declare class FriendService {
    private httpClient;
    constructor(httpClient: HttpClient);
    /**
     * Lấy tất cả friends
     * POST /zalo-personal/friends/all
     */
    getAllFriends(request: GetAllFriendsDto): Promise<AutomationWebResponse<GetAllFriendsResponseDto>>;
    /**
     * Tìm kiếm friends
     * POST /zalo-personal/friends/search
     */
    searchFriends(request: SearchFriendsDto): Promise<AutomationWebResponse<SearchFriendsResponseDto>>;
    /**
     * Lấy thông tin chi tiết friends
     * POST /zalo-personal/friends/info
     */
    getFriendsInfo(request: GetFriendsInfoDto): Promise<AutomationWebResponse<GetFriendsInfoResponse>>;
    /**
     * Lấy friends đang online
     * POST /zalo-personal/friends/online
     */
    getOnlineFriends(request: GetOnlineFriendsDto): Promise<AutomationWebResponse<GetOnlineFriendsResponse>>;
    /**
     * Lấy thống kê friends
     * GET /zalo-personal/friends/stats
     */
    getFriendsStats(sessionId: string): Promise<AutomationWebResponse<FriendStats>>;
    /**
     * Gửi lời mời kết bạn
     * POST /zalo-personal/friends/request/send
     */
    sendFriendRequest(request: SendFriendRequestDto): Promise<AutomationWebResponse<OperationResultDto>>;
    /**
     * Chấp nhận lời mời kết bạn
     * POST /zalo-personal/friends/request/accept
     */
    acceptFriendRequest(request: AcceptFriendRequestDto): Promise<AutomationWebResponse<OperationResultDto>>;
    /**
     * Lấy danh sách lời mời nhận được
     * POST /zalo-personal/friends/request/received
     */
    getReceivedFriendRequests(request: GetReceivedFriendRequestsDto): Promise<AutomationWebResponse<GetReceivedFriendRequestsResponseDto>>;
    /**
     * Lấy danh sách lời mời đã gửi
     * POST /zalo-personal/friends/request/sent
     */
    getSentFriendRequests(request: GetSentFriendRequestsDto): Promise<AutomationWebResponse<GetSentFriendRequestsResponseDto>>;
    /**
     * Hủy lời mời đã gửi
     * POST /zalo-personal/friends/request/undo
     */
    undoFriendRequest(request: UndoFriendRequestDto): Promise<AutomationWebResponse<OperationResultDto>>;
    /**
     * Xóa bạn bè
     * POST /zalo-personal/friends/remove
     */
    removeFriend(request: RemoveFriendDto): Promise<AutomationWebResponse<OperationResultDto>>;
    /**
     * Chặn user
     * POST /zalo-personal/friends/block
     */
    blockUser(request: BlockUserDto): Promise<AutomationWebResponse<OperationResultDto>>;
    /**
     * Bỏ chặn user
     * POST /zalo-personal/friends/unblock
     */
    unblockUser(request: UnblockUserDto): Promise<AutomationWebResponse<OperationResultDto>>;
    /**
     * Thay đổi biệt danh friend
     * POST /zalo-personal/friends/alias/change
     */
    changeFriendAlias(request: ChangeFriendAliasDto): Promise<AutomationWebResponse<OperationResultDto>>;
    /**
     * Xóa biệt danh friend
     * POST /zalo-personal/friends/alias/remove
     */
    removeFriendAlias(request: RemoveFriendAliasDto): Promise<AutomationWebResponse<OperationResultDto>>;
    /**
     * Lấy danh sách biệt danh
     * POST /zalo-personal/friends/alias/list
     */
    getAliasList(request: GetAliasListDto): Promise<AutomationWebResponse<any>>;
    /**
     * Tìm kiếm user theo số điện thoại
     * POST /zalo-personal/friends/find-user
     */
    findUser(request: FindUserDto): Promise<AutomationWebResponse<FindUserResponseDto>>;
    /**
     * Lấy thời gian last online
     * POST /zalo-personal/friends/last-online
     */
    getLastOnline(request: GetLastOnlineDto): Promise<AutomationWebResponse<GetLastOnlineResponseDto>>;
    /**
     * Lấy own ID
     * POST /zalo-personal/friends/own-id
     */
    getOwnId(request: GetOwnIdDto): Promise<AutomationWebResponse<GetOwnIdResponseDto>>;
    /**
     * Lấy thông tin tài khoản
     * POST /zalo-personal/friends/account-info
     */
    fetchAccountInfo(request: FetchAccountInfoDto): Promise<AutomationWebResponse<FetchAccountInfoResponseDto>>;
}
//# sourceMappingURL=friends.service.d.ts.map