import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient.mjs"; import { type NormalizedClientOptionsWithAuth } from "../../../../BaseClient.mjs"; import * as core from "../../../../core/index.mjs"; import * as Whop from "../../../index.mjs"; export declare namespace DmChannelsClient { type Options = BaseClientOptions; interface RequestOptions extends BaseRequestOptions { } } export declare class DmChannelsClient { protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options?: DmChannelsClient.Options); /** * Lists the authenticated user's DM channels, most recently active first. * * Required permissions: * - `dms:read` * * @param {Whop.ListDmChannelsRequest} request * @param {DmChannelsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Whop.BadRequestError} * @throws {@link Whop.UnauthorizedError} * @throws {@link Whop.ForbiddenError} * @throws {@link Whop.NotFoundError} * @throws {@link Whop.UnprocessableEntityError} * @throws {@link Whop.TooManyRequestsError} * @throws {@link Whop.InternalServerError} * @throws {@link errors.WhopError} * @throws {@link errors.WhopTimeoutError} * * @example * await client.dmChannels.list({ * first: 42, * last: 42, * account_id: "biz_xxxxxxxxxxxxxx" * }) */ list(request?: Whop.ListDmChannelsRequest, requestOptions?: DmChannelsClient.RequestOptions): Promise>; /** * Creates a DM channel between two or more users, optionally scoped to an account. Returns the existing channel if one already exists. * * Required permissions: * - `dms:channel:manage` * * @param {Whop.CreateDmChannelsRequest} request * @param {DmChannelsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Whop.BadRequestError} * @throws {@link Whop.UnauthorizedError} * @throws {@link Whop.ForbiddenError} * @throws {@link Whop.NotFoundError} * @throws {@link Whop.UnprocessableEntityError} * @throws {@link Whop.TooManyRequestsError} * @throws {@link Whop.InternalServerError} * @throws {@link errors.WhopError} * @throws {@link errors.WhopTimeoutError} * * @example * await client.dmChannels.create({ * with_user_ids: ["with_user_ids"] * }) */ create(request: Whop.CreateDmChannelsRequest, requestOptions?: DmChannelsClient.RequestOptions): core.HttpResponsePromise; private __create; /** * Retrieves the details of an existing DM channel. * * Required permissions (one of): * - `dms:read` * - `support_chat:read` * * @param {Whop.RetrieveDmChannelsRequest} request * @param {DmChannelsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Whop.BadRequestError} * @throws {@link Whop.UnauthorizedError} * @throws {@link Whop.ForbiddenError} * @throws {@link Whop.NotFoundError} * @throws {@link Whop.UnprocessableEntityError} * @throws {@link Whop.TooManyRequestsError} * @throws {@link Whop.InternalServerError} * @throws {@link errors.WhopError} * @throws {@link errors.WhopTimeoutError} * * @example * await client.dmChannels.retrieve({ * id: "id" * }) */ retrieve(request: Whop.RetrieveDmChannelsRequest, requestOptions?: DmChannelsClient.RequestOptions): core.HttpResponsePromise; private __retrieve; /** * Permanently deletes a DM channel and all of its messages. Only a channel admin can delete it. * * Required permissions (one of): * - `dms:channel:manage` * - `support_chat:create` * * @param {Whop.DeleteDmChannelsRequest} request * @param {DmChannelsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Whop.BadRequestError} * @throws {@link Whop.UnauthorizedError} * @throws {@link Whop.ForbiddenError} * @throws {@link Whop.NotFoundError} * @throws {@link Whop.UnprocessableEntityError} * @throws {@link Whop.TooManyRequestsError} * @throws {@link Whop.InternalServerError} * @throws {@link errors.WhopError} * @throws {@link errors.WhopTimeoutError} * * @example * await client.dmChannels.delete({ * id: "id" * }) */ delete(request: Whop.DeleteDmChannelsRequest, requestOptions?: DmChannelsClient.RequestOptions): core.HttpResponsePromise; private __delete; /** * Updates a DM channel's settings, such as its display name. Only a channel admin can update it. * * Required permissions (one of): * - `dms:channel:manage` * - `support_chat:create` * * @param {Whop.UpdateDmChannelsRequest} request * @param {DmChannelsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Whop.BadRequestError} * @throws {@link Whop.UnauthorizedError} * @throws {@link Whop.ForbiddenError} * @throws {@link Whop.NotFoundError} * @throws {@link Whop.UnprocessableEntityError} * @throws {@link Whop.TooManyRequestsError} * @throws {@link Whop.InternalServerError} * @throws {@link errors.WhopError} * @throws {@link errors.WhopTimeoutError} * * @example * await client.dmChannels.update({ * id: "id" * }) */ update(request: Whop.UpdateDmChannelsRequest, requestOptions?: DmChannelsClient.RequestOptions): core.HttpResponsePromise; private __update; }