import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as models from "../models/index.js"; import * as operations from "../models/operations/index.js"; import { PageIterator } from "../types/operations.js"; export declare class Channels extends ClientSDK { /** * List channels * * @remarks * List the channels in a project. The list is paginated. Needs the `channels:read` permission. */ list(projectId: string, page?: number | undefined, pageSize?: number | undefined, options?: RequestOptions): Promise>; /** * Create a channel * * @remarks * Create a channel in a project, with the default rules. The project's first channel becomes its default. Needs the `channels:write` permission. */ create(projectId: string, body: operations.CreateChannelRequestBody, options?: RequestOptions): Promise; /** * Get a channel * * @remarks * Get a channel by ID. Needs the `channels:read` permission. */ retrieve(id: string, options?: RequestOptions): Promise; /** * Update a channel * * @remarks * Update a channel. Fields you leave out keep their value. Needs the `channels:write` permission. */ update(id: string, body: operations.UpdateChannelRequestBody, options?: RequestOptions): Promise; /** * Delete a channel * * @remarks * Delete a channel. Its key is freed for a new channel. When it was the default, the oldest remaining channel becomes the default. A channel that still moderates a Slack workspace must be disconnected first. Needs the `channels:write` permission. */ delete(id: string, options?: RequestOptions): Promise; /** * Duplicate a channel * * @remarks * Copy a channel in its project, with every setting, policy, rule and wordlist. Integrations (Discord, Slack, WordPress) are not copied. Needs the `channels:write` permission. */ duplicate(id: string, body: operations.DuplicateChannelRequestBody, options?: RequestOptions): Promise; } //# sourceMappingURL=channels.d.ts.map