import mongoose, { Document } from 'mongoose';
import { ReviewerAvailability, ReviewerPreferences, ReviewerMetrics, ReviewerRole } from '../types/review.js';
export interface IReviewerProfile extends Document {
    userId: string;
    name: string;
    email: string;
    title: string;
    department: string;
    organization: string;
    roles: ReviewerRole[];
    expertise: string[];
    certifications?: string[];
    experienceYears: number;
    availability: ReviewerAvailability;
    preferences: ReviewerPreferences;
    metrics: ReviewerMetrics;
    isActive: boolean;
    availabilityStatus?: string;
    currentWorkload?: number;
    performanceRating?: string;
    canTakeReview?: (estimatedHours?: number) => boolean;
    updateMetrics?: (reviewData: {
        reviewTime: number;
        qualityScore: number;
        onTime: boolean;
        feedbackQuality: number;
        thoroughness: number;
    }) => Promise<void>;
}
export declare const ReviewerProfileModel: mongoose.Model<IReviewerProfile, {}, {}, {}, mongoose.Document<unknown, {}, IReviewerProfile, {}, {}> & IReviewerProfile & Required<{
    _id: unknown;
}> & {
    __v: number;
}, any>;
//# sourceMappingURL=ReviewerProfile.d.ts.map