import { proto } from "../../WAProto"; export type NewsletterReactionMode = "ALL" | "BASIC" | "NONE"; export type NewsletterState = "ACTIVE" | "GEOSUSPENDED" | "SUSPENDED"; export type NewsletterVerification = "VERIFIED" | "UNVERIFIED"; export type NewsletterMute = "ON" | "OFF" | "UNDEFINED"; export type NewsletterViewRole = "ADMIN" | "GUEST" | "OWNER" | "SUBSCRIBER"; export type NewsletterViewerMetadata = { mute: NewsletterMute; view_role: NewsletterViewRole; }; export type NewsletterMetadata = { /**jid of newsletter */ id: string; /**state of newsletter */ state: NewsletterState; /**creation timestamp of newsletter */ creation_time: number; /**name of newsletter */ name: string; /**timestamp of last name modification of newsletter */ nameTime: number; /**description of newsletter */ description: string; /**timestamp of last description modification of newsletter */ descriptionTime: number; /**invite code of newsletter */ invite: string; /**i dont know */ handle: null; /**direct path of picture */ picture: string | null; /**direct path of picture preview (lower quality) */ preview: string | null; /**reaction mode of newsletter */ reaction_codes?: NewsletterReactionMode; /**subscribers count of newsletter */ subscribers: number; /**verification state of newsletter */ verification: NewsletterVerification; /**viewer metadata */ viewer_metadata: NewsletterViewerMetadata; }; export type SubscriberAction = "promote" | "demote"; export type ReactionModeUpdate = { reaction_codes: { blocked_codes: null; enabled_ts_sec: null; value: NewsletterReactionMode; }; }; /**only exists reaction mode update */ export type NewsletterSettingsUpdate = ReactionModeUpdate; export type NewsletterReaction = { count: number; code: string; }; export type NewsletterFetchedUpdate = { /**id of message in newsletter, starts from 100 */ server_id: string; /**count of views in this message */ views?: number; /**reactions in this message */ reactions: NewsletterReaction[]; /**the message, if you requested only updates, you will not receive message */ message?: proto.IWebMessageInfo; }; export declare const enum MexOperations { PROMOTE = "NotificationNewsletterAdminPromote", DEMOTE = "NotificationNewsletterAdminDemote", UPDATE = "NotificationNewsletterUpdate", } export declare const enum XWAPaths { PROMOTE = "xwa2_notify_newsletter_admin_promote", DEMOTE = "xwa2_notify_newsletter_admin_demote", ADMIN_COUNT = "xwa2_newsletter_admin", CREATE = "xwa2_newsletter_create", NEWSLETTER = "xwa2_newsletter", METADATA_UPDATE = "xwa2_notify_newsletter_on_metadata_update", } export declare const enum QueryIds { JOB_MUTATION = "7150902998257522", METADATA = "6620195908089573", UNFOLLOW = "7238632346214362", FOLLOW = "7871414976211147", UNMUTE = "7337137176362961", MUTE = "25151904754424642", CREATE = "6996806640408138", ADMIN_COUNT = "7130823597031706", CHANGE_OWNER = "7341777602580933", DELETE = "8316537688363079", DEMOTE = "6551828931592903", }