import type { GroupMetadata } from '../Types/index.js'; import type { SocketContext } from './types.js'; export declare const makeGroupMethods: (ctx: SocketContext) => { groupMetadata: (jid: string) => Promise; groupCreate: (subject: string, participants: string[]) => Promise; groupLeave: (jid: string) => Promise; groupUpdateSubject: (jid: string, subject: string) => Promise; groupUpdateDescription: (jid: string, description?: string) => Promise; groupParticipantsUpdate: (jid: string, participants: string[], action: "add" | "remove" | "promote" | "demote") => Promise; groupFetchAllParticipating: () => Promise>; groupInviteCode: (jid: string) => Promise; groupRevokeInvite: (jid: string) => Promise; groupSettingUpdate: (jid: string, setting: "locked" | "announce" | "membership_approval" | "announcement" | "not_announcement" | "unlocked" | "on" | "off", value?: boolean) => Promise; groupToggleEphemeral: (jid: string, expiration: number) => Promise; groupAcceptInvite: (code: string) => Promise; /** Join a group via a GroupInviteMessage (V4 invite). */ groupAcceptInviteV4: (key: { remoteJid?: string | null; }, msg: { inviteCode?: string | null; inviteExpiration?: number | null; groupJid?: string | null; }) => Promise; groupGetInviteInfo: (code: string) => Promise; groupRequestParticipantsList: (jid: string) => Promise; groupRequestParticipantsUpdate: (jid: string, participants: string[], action: "approve" | "reject") => Promise; /** * Set or clear the bot's per-group "member label" — the small tag rendered * under the bot's display name inside that group's UI. Empty `label` * clears it. Sent as a `ProtocolMessage` over the regular message path * (matching WA Web's wire format), not as an IQ. * * Self-applied only — WhatsApp's protocol does not let admins change * other members' labels even with admin privileges; the same restriction * applies in the official mobile app. */ updateMemberLabel: (jid: string, label: string) => Promise; }; //# sourceMappingURL=groups.d.ts.map