import { Review, CreateReviewRequest, UpdateReviewRequest, ReviewListParams, ReviewSummary, ReviewAnalytics } from '../types/review';
import { BaseResource } from './base';
export declare class ReviewResource extends BaseResource {
    /**
     * Get list of reviews
     */
    list(params?: ReviewListParams): Promise<{
        data: Review[];
    }>;
    /**
     * Get review by ID
     */
    getById(reviewId: string): Promise<Review>;
    /**
     * Create new review
     */
    create(data: CreateReviewRequest): Promise<Review>;
    /**
     * Update review
     */
    update(reviewId: string, data: UpdateReviewRequest): Promise<Review>;
    /**
     * Delete review
     */
    delete(reviewId: string): Promise<void>;
    /**
     * Reply to review
     */
    reply(reviewId: string, reply: string): Promise<Review>;
    /**
     * Get product review summary
     */
    getProductSummary(productId: string): Promise<ReviewSummary>;
    /**
     * Get product reviews
     */
    getProductReviews(productId: string, params?: ReviewListParams): Promise<{
        data: Review[];
        summary: ReviewSummary;
    }>;
    /**
     * Get customer reviews
     */
    getCustomerReviews(customerId: string, params?: ReviewListParams): Promise<{
        data: Review[];
    }>;
    /**
     * Import platform reviews
     */
    importPlatformReviews(platform: string, force?: boolean): Promise<{
        total_imported: number;
        success_count: number;
        failed_count: number;
        errors?: any[];
    }>;
    /**
     * Sync platform reviews
     */
    syncPlatformReviews(platform: string): Promise<{
        job_id: string;
        status: 'queued' | 'processing' | 'completed' | 'failed';
    }>;
    /**
     * Get review analytics
     */
    getAnalytics(params: {
        from_date: string;
        to_date: string;
        platform?: string;
    }): Promise<ReviewAnalytics>;
    /**
     * Export reviews
     */
    export(params?: ReviewListParams): Promise<{
        download_url: string;
        expires_at: string;
    }>;
    /**
     * Moderate review
     */
    moderate(reviewId: string, action: 'approve' | 'reject', reason?: string): Promise<Review>;
}
