import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient.js"; import { type NormalizedClientOptionsWithAuth } from "../../../../BaseClient.js"; import * as core from "../../../../core/index.js"; import * as Whop from "../../../index.js"; export declare namespace ReviewsClient { type Options = BaseClientOptions; interface RequestOptions extends BaseRequestOptions { } } /** * A Review is a customer's star rating and optional written feedback on a product, shown on the product's store page. * * Use the Reviews API to list a product's reviews, filtered by star rating or creation date, and retrieve a review by ID. */ export declare class ReviewsClient { protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options?: ReviewsClient.Options); /** * Lists the published reviews for a product or account. Without `account_id` or `product_id`, a user lists the reviews they wrote, an account or app API key lists its account's reviews, and a request without credentials returns 400. * * @param {Whop.ListReviewsRequest} request * @param {ReviewsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Whop.BadRequestError} * @throws {@link Whop.NotFoundError} * @throws {@link errors.WhopError} * @throws {@link errors.WhopTimeoutError} * * @example * await client.reviews.list({ * account_id: "biz_xxxxxxxxxxxxxx", * product_id: "prod_xxxxxxxxxxxxx" * }) */ list(request?: Whop.ListReviewsRequest, requestOptions?: ReviewsClient.RequestOptions): Promise>; /** * Retrieves a published review. Reviews that are not published return 404. * * @param {Whop.RetrieveReviewsRequest} request * @param {ReviewsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Whop.NotFoundError} * @throws {@link errors.WhopError} * @throws {@link errors.WhopTimeoutError} * * @example * await client.reviews.retrieve({ * id: "rev_xxxxxxxxxxxxxx" * }) */ retrieve(request: Whop.RetrieveReviewsRequest, requestOptions?: ReviewsClient.RequestOptions): core.HttpResponsePromise; private __retrieve; /** * Deletes a review the signed-in user wrote. Requires the `review:delete` scope, and returns 404 for a review another user wrote. * * @param {Whop.DeleteReviewsRequest} request * @param {ReviewsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Whop.UnauthorizedError} * @throws {@link Whop.ForbiddenError} * @throws {@link Whop.NotFoundError} * @throws {@link errors.WhopError} * @throws {@link errors.WhopTimeoutError} * * @example * await client.reviews.delete({ * id: "rev_xxxxxxxxxxxxxx" * }) */ delete(request: Whop.DeleteReviewsRequest, requestOptions?: ReviewsClient.RequestOptions): core.HttpResponsePromise; private __delete; }