import { UsersService } from './users.service';
import { InvitationService } from './services/invitation.service';
import { RequestUser } from '../auth/strategies/jwt.strategy';
import { InviteUserDto, InvitationResponseDto } from './dto/invite-user.dto';
export declare class UsersController {
    private readonly usersService;
    private readonly invitationService;
    constructor(usersService: UsersService, invitationService: InvitationService);
    findAll(user: RequestUser, page?: number, limit?: number): Promise<{
        data: Partial<import("../auth").User>[];
        total: number;
        page: number;
        limit: number;
    }>;
    findOne(id: string, user: RequestUser): Promise<Partial<import("../auth").User>>;
    update(id: string, updateDto: any, user: RequestUser): Promise<Partial<import("../auth").User>>;
    invite(inviteDto: InviteUserDto, user: RequestUser): Promise<InvitationResponseDto>;
    listInvitations(user: RequestUser): Promise<InvitationResponseDto[]>;
    resendInvitation(token: string, user: RequestUser): Promise<InvitationResponseDto>;
    cancelInvitation(id: string, user: RequestUser): Promise<void>;
}
