import type { CanonicalGroupUpdate } from '../Bridge/types.js'; import type { BaileysEventMap, WAMessage } from '../Types/index.js'; /** * Domain event a group notification maps to (either participant or * settings). `null` when the action carries nothing useful for callers * (e.g. raw `create`/`link`/`unlink` payloads). */ export type GroupNotificationDomainEvent = { name: 'group-participants.update'; payload: BaileysEventMap['group-participants.update']; } | { name: 'groups.update'; payload: BaileysEventMap['groups.update']; } | null; /** * Build all `group.join-request` events a notification fans out to — * upstream emits one event per affected participant. Returns an empty * array for non-join-request actions. */ export declare const buildGroupJoinRequestEvents: (notification: CanonicalGroupUpdate) => BaileysEventMap["group.join-request"][]; /** Build the upstream-style high-level event for a canonical group update. */ export declare const buildGroupNotificationDomainEvent: (notification: CanonicalGroupUpdate) => GroupNotificationDomainEvent; /** * Build all stub WAMessages a group notification action should fan out to. * * `fromMe` is computed by the caller (events.ts) from the current user * identity — it isn't part of the bridge payload, so it doesn't belong on * the canonical type. */ export declare const buildGroupNotificationStubMessages: (notification: CanonicalGroupUpdate, fromMe: boolean) => WAMessage[]; //# sourceMappingURL=group-notifications.d.ts.map