import type { Channel as APIChannel } from 'revolt-api'; import { User, Channel, Message } from './index'; import { TextBasedChannel } from './interfaces/index'; import type { Client } from '../client/Client'; import { MessageManager, MessageOptions, UserResolvable } from '../managers/index'; import { ChannelPermissions, ChannelTypes, Collection } from '../util/index'; declare type APIGroupChannel = Extract; export declare class GroupChannel extends Channel implements TextBasedChannel { name: string; description: string | null; ownerId: string; readonly type = ChannelTypes.GROUP; permissions: Readonly; icon: string | null; messages: MessageManager; lastMessageId: string | null; users: Collection; nsfw: boolean; constructor(client: Client, data: APIGroupChannel); protected _patch(data: APIGroupChannel): this; get lastMessage(): Message | null; add(user: UserResolvable): Promise; remove(user: UserResolvable): Promise; leave(): Promise; send(options: MessageOptions | string): Promise; iconURL(options?: { size: number; }): string | null; get owner(): User | null; } export {};