meta-cloud-api 3.7.0 → 3.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -15,6 +15,17 @@
15
15
 
16
16
  ## Quick Start
17
17
 
18
+ **New project?** Scaffold a working WhatsApp app in 30 seconds. No Meta account needed to start:
19
+
20
+ ```bash
21
+ npm create whatsapp-app@latest my-bot
22
+ cd my-bot && npm run dev
23
+ ```
24
+
25
+ It opens in mock mode: you play the customer in the browser, your message runs through the SDK as a real webhook payload, and `lib/bot.ts` replies. Add credentials to `.env.local` and the same code talks to real WhatsApp. See [create-whatsapp-app](./packages/create-whatsapp-app).
26
+
27
+ **Existing project?**
28
+
18
29
  ```bash
19
30
  pnpm add meta-cloud-api
20
31
  ```
@@ -87,13 +98,17 @@ import express from 'express';
87
98
  import { expressWebhookHandler } from 'meta-cloud-api';
88
99
 
89
100
  const app = express();
90
- app.use(express.json());
101
+ // Keep the raw body: signatures are computed over the exact bytes Meta sent
102
+ app.use(express.json({ verify: (req, _res, buf) => { (req as any).rawBody = buf.toString(); } }));
91
103
 
92
104
  // Handler is automatically cached per phoneNumberId — safe against HMR re-evaluation
93
105
  const Whatsapp = expressWebhookHandler({
94
106
  accessToken: process.env.CLOUD_API_ACCESS_TOKEN,
95
107
  phoneNumberId: process.env.WA_PHONE_NUMBER_ID,
96
108
  webhookVerificationToken: process.env.WEBHOOK_VERIFICATION_TOKEN,
109
+ // Reject forged POSTs: require a valid X-Hub-Signature-256 from Meta
110
+ appSecret: process.env.APP_SECRET,
111
+ verifyWebhookSignature: true,
97
112
  });
98
113
 
99
114
  // Handle incoming text messages — echo back to sender
package/dist/index.d.mts CHANGED
@@ -752,6 +752,17 @@ type WhatsAppConfig = {
752
752
  privatePem?: string;
753
753
  passphrase?: string; /** Automatic retry configuration for throttling errors. */
754
754
  retry?: RetryConfig;
755
+ /**
756
+ * Reject webhook POSTs whose `X-Hub-Signature-256` header is not a valid
757
+ * HMAC-SHA256 of the raw body keyed with `appSecret`. Requires `appSecret`.
758
+ *
759
+ * Off by default for backward compatibility. Turn it on in production:
760
+ * without it anyone who knows your webhook URL can post fake messages.
761
+ *
762
+ * Express users must keep the raw body, since re-serialized JSON will not match:
763
+ * `app.use(express.json({ verify: (req, _res, buf) => { req.rawBody = buf.toString(); } }))`.
764
+ */
765
+ verifyWebhookSignature?: boolean;
755
766
  };
756
767
  type WabaConfigType = {
757
768
  /**
@@ -4634,6 +4645,65 @@ interface TrackingEventsWebhookValue {
4634
4645
  field: 'tracking_events';
4635
4646
  value: TrackingEventsValue;
4636
4647
  }
4648
+ /**
4649
+ * Known `user_actions[].action_type` values. Open enum: Meta adds values
4650
+ * without a breaking change, so ignore action types you do not recognize
4651
+ * instead of treating them as errors.
4652
+ *
4653
+ * - `marketing_messages_link_click` — the user tapped the body or call-to-action of a marketing message.
4654
+ * - `landing_page_view` — the tapped link opened its landing page in the WhatsApp In-App Browser.
4655
+ */
4656
+ type UserActionType = 'marketing_messages_link_click' | 'landing_page_view' | string;
4657
+ /**
4658
+ * Payload container for every user action on a marketing message. The name
4659
+ * reflects its original click-only use; branch on `action_type` to tell a
4660
+ * click from a landing page view.
4661
+ */
4662
+ interface MarketingMessagesLinkClickData {
4663
+ /**
4664
+ * Which part of the message was tapped: the call-to-action or the body.
4665
+ * Click events only — absent on a landing page view.
4666
+ */
4667
+ click_component?: 'cta' | 'body';
4668
+ /**
4669
+ * Product ID assigned in Ads Manager or the Marketing API.
4670
+ * Click events only — absent on a landing page view.
4671
+ */
4672
+ product_id?: string;
4673
+ /**
4674
+ * Unique identifier for the click that opened the In-App Browser; also
4675
+ * appended to the destination URL. Shared by the click event and its
4676
+ * landing page view, so use it to correlate them when `tracking_token`
4677
+ * is missing. The key is omitted (not null) when unavailable.
4678
+ */
4679
+ click_id?: string;
4680
+ /**
4681
+ * Internal Meta token for processing and tracking. A landing page view
4682
+ * carries the same `tracking_token` as its click event. The key is omitted
4683
+ * when unavailable.
4684
+ */
4685
+ tracking_token?: string;
4686
+ }
4687
+ interface UserAction {
4688
+ /** Name of the action. @see UserActionType */
4689
+ action_type: UserActionType;
4690
+ /** Unix timestamp, in seconds, of when Meta recorded the action */
4691
+ timestamp: string;
4692
+ /** Action payload. Present on click and landing page view actions. */
4693
+ marketing_messages_link_click_data?: MarketingMessagesLinkClickData;
4694
+ }
4695
+ /**
4696
+ * `messages` field value carrying marketing message user actions.
4697
+ * Neither event order nor pairing is guaranteed: a landing page view may
4698
+ * arrive before, after, or without its click event, and both correlation
4699
+ * keys can be absent.
4700
+ */
4701
+ interface UserActionsWebhookValue {
4702
+ messaging_product: 'whatsapp';
4703
+ metadata: WebhookMetadata;
4704
+ /** User actions on marketing messages */
4705
+ user_actions: UserAction[];
4706
+ }
4637
4707
  //#endregion
4638
4708
  //#region src/core/webhook/types/messageEchoes.d.ts
4639
4709
  /**
@@ -4784,11 +4854,18 @@ interface StatusWebhook {
4784
4854
  * window; from October 1, 2026, a 1:1 service delivery inside the
4785
4855
  * business phone number's free tier.
4786
4856
  * - `free_entry_point` — message sent inside an open free entry point
4787
- * window.
4857
+ * window. Since September 28, 2026 the window may stay open for up to
4858
+ * 7 days (previously 72 hours).
4788
4859
  * - `free_group_customer_service` — through September 30, 2026, a group
4789
4860
  * utility or non-template message delivered inside an open group
4790
4861
  * customer service window; from October 1, 2026, a group service
4791
4862
  * delivery inside the business phone number's free tier.
4863
+ *
4864
+ * From October 1, 2026 reaction messages are the only service message
4865
+ * type that is never charged and do not count toward the free tier, and
4866
+ * eligible governments and non-profits keep service messages free beyond
4867
+ * the tier through December 31, 2027. Meta documents no distinct `type`
4868
+ * for those exemptions, so do not infer eligibility from this value.
4792
4869
  */
4793
4870
  type: 'regular' | 'free_customer_service' | 'free_entry_point' | 'free_group_customer_service';
4794
4871
  /**
@@ -5286,9 +5363,11 @@ interface ErrorWebhookValue {
5286
5363
  errors: Array<WebhookError>;
5287
5364
  }
5288
5365
  /**
5289
- * Union type for all webhook value types
5366
+ * Union type for all webhook value types delivered on the `messages` field.
5367
+ * `UserActionsWebhookValue` carries marketing message click and landing page
5368
+ * view actions (`user_actions`) instead of messages or statuses.
5290
5369
  */
5291
- type WebhookValue = MessageWebhookValue | StatusWebhookValue | ErrorWebhookValue;
5370
+ type WebhookValue = MessageWebhookValue | StatusWebhookValue | ErrorWebhookValue | UserActionsWebhookValue;
5292
5371
  /**
5293
5372
  * Union type for all webhook field values
5294
5373
  */
@@ -8939,6 +9018,17 @@ type ProcessedStatus = {
8939
9018
  displayPhoneNumber: string;
8940
9019
  status: StatusWebhook;
8941
9020
  };
9021
+ /**
9022
+ * Processed marketing message user action (link click or landing page view)
9023
+ * delivered as `user_actions` on the `messages` field. Marketing Messages API
9024
+ * for WhatsApp only. Branch on `action.action_type` and ignore unknown values.
9025
+ */
9026
+ type ProcessedUserAction = {
9027
+ wabaId: string;
9028
+ phoneNumberId: string;
9029
+ displayPhoneNumber: string;
9030
+ action: UserAction;
9031
+ };
8942
9032
  /**
8943
9033
  * Processed webhook field types for specialized handlers
8944
9034
  */
@@ -9152,6 +9242,7 @@ type WebhookHandlerContext = {
9152
9242
  type WebhookHandler<TProcessed, TReturn = void> = (whatsapp: WhatsApp, processed: TProcessed, context: WebhookHandlerContext) => TReturn | Promise<TReturn>;
9153
9243
  type MessageHandler = WebhookHandler<ProcessedMessage>;
9154
9244
  type StatusHandler = WebhookHandler<ProcessedStatus>;
9245
+ type UserActionHandler = WebhookHandler<ProcessedUserAction>;
9155
9246
  type FlowHandler = WebhookHandler<FlowEndpointRequest, any>;
9156
9247
  type RawWebhookHandler = WebhookHandler<WebhookPayload>;
9157
9248
  type AccountUpdateHandler = WebhookHandler<ProcessedAccountUpdate>;
@@ -9205,6 +9296,7 @@ type SystemMessageHandler = WebhookHandler<SystemProcessedMessage>;
9205
9296
  declare function processWebhookMessages(request: Request, whatsapp: WhatsApp, handlers: {
9206
9297
  messageHandlers: Map<MessageTypesEnum, MessageHandler>;
9207
9298
  statusHandler?: StatusHandler;
9299
+ userActionHandler?: UserActionHandler;
9208
9300
  preProcessHandler?: MessageHandler;
9209
9301
  postProcessHandler?: MessageHandler;
9210
9302
  rawHandler?: RawWebhookHandler;
@@ -9241,11 +9333,21 @@ declare function processWebhookMessages(request: Request, whatsapp: WhatsApp, ha
9241
9333
  templateCorrectCategoryDetectionHandler?: TemplateCorrectCategoryDetectionHandler;
9242
9334
  trackingEventsHandler?: TrackingEventsHandler;
9243
9335
  userPreferencesHandler?: UserPreferencesHandler;
9244
- }): Promise<Response>;
9336
+ }, options?: WebhookSignatureOptions): Promise<Response>;
9245
9337
  /**
9246
9338
  * Handle flow requests
9247
9339
  */
9248
9340
  declare function processFlowRequest(request: Request, config: WabaConfigType, whatsapp: WhatsApp, flowHandlers: Map<FlowTypeEnum, FlowHandler>): Promise<Response>;
9341
+ type WebhookSignatureOptions = {
9342
+ /** Meta App Secret used as the HMAC key. */appSecret?: string; /** When true, reject requests without a valid `X-Hub-Signature-256`. */
9343
+ verifySignature?: boolean;
9344
+ };
9345
+ /**
9346
+ * Check an `X-Hub-Signature-256` header (`sha256=<hex>`) against the raw
9347
+ * request body. Constant-time; returns false instead of throwing on
9348
+ * malformed or wrong-length input.
9349
+ */
9350
+ declare function isValidWebhookSignature(rawBody: string, signatureHeader: string | null, appSecret: string): boolean;
9249
9351
  /**
9250
9352
  * Constructs a full URL from framework-specific request headers and URL
9251
9353
  * @param headers - Request headers containing host and protocol information
@@ -9265,6 +9367,7 @@ declare class WebhookProcessor {
9265
9367
  private client;
9266
9368
  private messageHandlers;
9267
9369
  private statusHandler;
9370
+ private userActionHandler;
9268
9371
  private preProcessHandler;
9269
9372
  private postProcessHandler;
9270
9373
  private rawHandler;
@@ -9301,12 +9404,21 @@ declare class WebhookProcessor {
9301
9404
  private templateCorrectCategoryDetectionHandler;
9302
9405
  private trackingEventsHandler;
9303
9406
  private userPreferencesHandler;
9407
+ private verifySignature;
9304
9408
  constructor(config: WhatsAppConfig);
9305
9409
  processVerification(mode: string | null, token: string | null, challenge: string | null): Promise<WebhookResponse>;
9306
9410
  processWebhook(request: Request): Promise<WebhookResponse>;
9307
9411
  processFlow(request: Request): Promise<WebhookResponse>;
9308
9412
  onMessage(type: MessageTypesEnum | string, handler: MessageHandler): void;
9309
9413
  onStatus(handler: StatusHandler): void;
9414
+ /**
9415
+ * Register a handler for marketing message user actions delivered as
9416
+ * `user_actions` on the `messages` webhook field (Marketing Messages API
9417
+ * for WhatsApp only): `marketing_messages_link_click` and
9418
+ * `landing_page_view`. `action_type` is an open enum — ignore unknown values.
9419
+ * @see https://developers.facebook.com/documentation/business-messaging/whatsapp/marketing-messages/track-landing-page-views
9420
+ */
9421
+ onUserAction(handler: UserActionHandler): void;
9310
9422
  onMessagePreProcess(handler: MessageHandler): void;
9311
9423
  onMessagePostProcess(handler: MessageHandler): void;
9312
9424
  onRaw(handler: RawWebhookHandler, fields?: WebhookFieldType[]): void;
@@ -9542,6 +9654,10 @@ declare class WebhookProcessor {
9542
9654
  * Remove the status handler
9543
9655
  */
9544
9656
  offStatus(): void;
9657
+ /**
9658
+ * Remove the user action handler
9659
+ */
9660
+ offUserAction(): void;
9545
9661
  /**
9546
9662
  * Remove the raw webhook handler
9547
9663
  */
@@ -9605,8 +9721,33 @@ declare function expressWebhookHandler(config: ExpressWebhookConfig): {
9605
9721
  };
9606
9722
  //#endregion
9607
9723
  //#region src/core/webhook/frameworks/nextjs-app/nextjs-app.d.ts
9724
+ interface NextRequest extends Request {
9725
+ nextUrl: {
9726
+ searchParams: URLSearchParams;
9727
+ };
9728
+ }
9608
9729
  interface NextJsAppWebhookConfig extends WhatsAppConfig {}
9609
- declare function nextjsAppWebhookHandler(config: NextJsAppWebhookConfig): any;
9730
+ /** The object returned by {@link nextjsAppWebhookHandler}. */
9731
+ type NextJsAppWebhookHandlers = ReturnType<typeof createHandlers>;
9732
+ declare function nextjsAppWebhookHandler(config: NextJsAppWebhookConfig): NextJsAppWebhookHandlers;
9733
+ declare function createHandlers(config: NextJsAppWebhookConfig, key: string): {
9734
+ GET: (request: NextRequest) => Promise<Response>;
9735
+ POST: (request: NextRequest) => Promise<Response>;
9736
+ webhook: {
9737
+ GET: (request: NextRequest) => Promise<Response>;
9738
+ POST: (request: NextRequest) => Promise<Response>;
9739
+ };
9740
+ flow: {
9741
+ GET: (request: NextRequest) => Promise<Response>;
9742
+ POST: (request: NextRequest) => Promise<Response>;
9743
+ };
9744
+ processor: WebhookProcessor;
9745
+ /**
9746
+ * Destroy this handler instance: removes all registered handlers
9747
+ * and clears it from the singleton cache so the next call creates a fresh instance.
9748
+ */
9749
+ destroy: () => void;
9750
+ };
9610
9751
  //#endregion
9611
9752
  //#region src/core/webhook/frameworks/nextjs-page/nextjs-page.d.ts
9612
9753
  interface BaseApiRequest extends BaseRequest {
@@ -9835,5 +9976,5 @@ declare function isFlowErrorRequest(request: FlowEndpointRequest): request is Fl
9835
9976
  */
9836
9977
  declare function isFlowPingRequest(request: FlowEndpointRequest): request is FlowHealthCheckRequest;
9837
9978
  //#endregion
9838
- export { AUTHORIZATION_ERROR_CODES, type AcceptCallRequest, AcceptSolutionRequest, AccountMode, AddPhoneNumbersRequest, type ApiPermissionErrorCode, AssignedUserRequest, AssignedUsersListParams, type AudioMediaObject, AudioMediaTypes, AudioMediaTypesEnum, AudioMediaTypesType, type AudioMessage, type AudioMessageHandler, type AudioProcessedMessage, type AuthenticationTemplateOptions, BLOCK_USER_ERROR_CODES, type BaseApiRequest, type BaseApiResponse, type BaseClass, BlockUserObject, BlockUsersApi, BlockUsersClass, BlockUsersRequest, BlockUsersResponse, BlockedUserInfo, type BodyOptions, BusinessApi, BusinessClass, BusinessComplianceInfoResponse, BusinessFieldsParam, BusinessGraphListResponse, BusinessGraphObject, BusinessListParams, BusinessProfileApi, type BusinessProfileClass, type BusinessProfileData, type BusinessProfileField, type BusinessProfileFieldsParam, type BusinessProfileResponse, BusinessVerticalEnum, type ButtonMessage, type ButtonMessageHandler, type ButtonOptions, ButtonPosition, ButtonPositionEnum, ButtonPositionType, type ButtonProcessedMessage, CALLING_ERROR_CODES, type CallAction, type CallActionResponse, type CallAnnouncementLanguage, type CallCaptureStatus, type CallHours, type CallHoursDay, type CallHoursStatus, type CallIconVisibility, type CallPermission, type CallPermissionAction, type CallPermissionLimit, type CallPermissionsResponse, type CallRecordingConfig, type CallSdpType, type CallSession, type CallTranscriptionConfig, type CallbackPermissionStatus, CallingApi, type CallingClass, type CallingSettings, type CallingSettingsResponse, type CallingStatus, CarouselCard, type CarouselOptions, CatalogButton, type CatalogTemplateOptions, Category, CategoryEnum, CategoryType, CodeVerificationStatus, CommerceApi, type CommerceClass, type CommerceSetting, type CommerceSettingsResponse, ComponentType, ComponentTypeType, ComponentTypes, ComponentTypesEnum, ContactBookApi, ContactBookClass, type ContactInfo, type ContactObject, type ContactsMessage, type ContactsMessageHandler, type ContactsProcessedMessage, ConversationTypes, ConversationTypesEnum, ConversationTypesType, ConversationalAutomationRequest, ConversationalAutomationResponse, ConversationalCommand, ConversationalPrompt, CopyCodeButton, type CouponTemplateOptions, type CreateFlowResponse, CreateOBOMobilityIntentRequest, CreatePhoneNumberRequest, CreatePhoneNumberResponse, type CreateQrCodeRequest, CreateScheduleRequest, type CreateUploadSessionParams, CreateWhatsAppBusinessSolutionRequest, CurrencyCodesEnum, type CurrencyParameter, CursorPaginationParams, Cursors, DataLocalizationRegion, DataLocalizationRegionEnum, DataLocalizationRegionType, type DateTimeParameter, DeleteContactBookEntryParams, DeleteContactBookEntryResponse, type DirectSendCategory, type DirectSendConfig, type DirectSendOptions, type DocumentMediaObject, DocumentMediaTypes, DocumentMediaTypesEnum, DocumentMediaTypesType, type DocumentMessage, type DocumentMessageHandler, type DocumentProcessedMessage, type EncryptedMessageRequest, type EncryptedMessagesResponse, EncryptionApi, type EncryptionClass, type EncryptionKeyPair, type EncryptionPublicKeyResponse, type ErrorWebhookValue, type ExpressRequest, type ExpressResponse, type ExpressWebhookConfig, FLOW_ERROR_CODES, FailedUserInfo, type Flow, FlowActionEnum, FlowApi, type FlowAsset, type FlowAssetsResponse, FlowButton, FlowCategoryEnum, type FlowClass, type FlowDataExchangeRequest, type FlowDataExchangeResponse, type FlowDecryptedRequestResponse, type FlowEncryptedRequestPayload, type FlowEndpointRequest, type FlowEndpointResponse, type FlowErrorNotificationRequest, type FlowErrorNotificationResponse, type FlowHandler, type FlowHealthCheckRequest, type FlowHealthCheckResponse, type FlowHttpRequest, type FlowMigrationFailure, type FlowMigrationResponse, type FlowMigrationResult, type FlowPreview, type FlowPreviewResponse, FlowStatusEnum, type FlowSuccessScreenResponse, type FlowType, FlowTypeEnum, type FlowValidationError, type FlowValidationErrorPointer, type FlowsListResponse, type FooterOptions, GROUP_ERROR_CODES, type GeneralHeaderInterface, type GeneralMessageBody, type GeneralRequestBody, type GetUploadHandleParams, GraphObject, type GroupCreateRequest, type GroupCreateResponse, type GroupInfoField, type GroupInfoFieldsParam, type GroupInfoResponse, type GroupInviteLinkResponse, type GroupJoinApprovalMode, type GroupJoinRequest, type GroupJoinRequestError, type GroupJoinRequestFailure, type GroupJoinRequestsActionResponse, type GroupJoinRequestsResponse, type GroupListParams, type GroupListResponse, type GroupMessage, type GroupParticipant, type GroupParticipantInput, type GroupParticipantsRequest, type GroupSettingsResponse, GroupsApi, type GroupsClass, type HeaderOptions, HealthStatus, HealthStatusEntity, type HolidaySchedule, HostPlatform, HttpMethods, HttpMethodsEnum, HttpMethodsType, type HttpsClientClass, type HttpsClientResponseClass, INTEGRITY_ERROR_CODES, type ImageMediaObject, ImageMediaTypes, ImageMediaTypesEnum, ImageMediaTypesType, type ImageMessage, type ImageMessageHandler, type ImageProcessedMessage, type InitiateCallRequest, type InitiateCallResponse, type InteractiveButtonReplyMessage, type InteractiveListReplyMessage, type InteractiveMessage, type InteractiveMessageHandler, type InteractiveObject, type InteractiveProcessedMessage, type InteractiveReply, InteractiveTypes, InteractiveTypesEnum, InteractiveTypesType, Languages, LanguagesEnum, LanguagesType, type LimitedTimeOfferOptions, type LimitedTimeOfferTemplateOptions, ListBlockedUsersParams, ListBlockedUsersResponse, type LocationInfo, type LocationMessage, type LocationMessageHandler, type LocationObject, type LocationParameter, type LocationProcessedMessage, Logger, type LoggerInterface, MPMButton, type MPMTemplateOptions, type MarketingMessageBidSpec, type MarketingMessageRequest, MarketingMessagesApi, type MarketingMessagesClass, MediaApi, type MediaCardCarouselTemplateOptions, MediaCarouselCard, MediaClass, type MediaInfo, type MediaParameter, MediaResponse, MediasResponse, MessagesApi as MessageApi, MessagesApi, MessageCategory, MessageCategoryEnum, MessageCategoryType, type MessageHandler, MessageHistoryApi, MessageHistoryClass, MessageHistoryEventListParams, MessageHistoryFieldsParam, MessageHistoryItem, MessageHistoryListParams, MessageHistoryResponse, type MessageRecipientType, type MessageRequestBody, type MessageRequestParams, type MessageStatus, MessageTemplateObject, MessageTemplateRequestBody, MessageTypes, MessageTypesEnum, MessageTypesType, type MessageWebhookValue, type MessagesClass, type MessagesResponse, MessagingLimitTier, type MetaError, type MetaErrorData, type MetaErrorDetail, type NextFunction, type NextJsAppWebhookConfig, type NextJsWebhookConfig, OTPButton, type OTPTemplateOptions, OfficialBusinessAccountAction, OfficialBusinessAccountApplicationData, OfficialBusinessAccountStatusResponse, OnboardPartnersToMMLiteRequest, type OrderInfo, type OrderMessage, type OrderMessageHandler, type OrderProcessedMessage, type Pagination, type PaginationCursors, type Paging, PagingCursors, PagingInfo, ParametersTypes, ParametersTypesEnum, ParametersTypesType, PassThreadControlParams, type PaymentConfiguration, type PaymentConfigurationCode, type PaymentConfigurationCreateRequest, type PaymentConfigurationCreateResponse, type PaymentConfigurationDeleteRequest, type PaymentConfigurationOauthLinkRequest, type PaymentConfigurationOauthLinkResponse, type PaymentConfigurationProvider, type PaymentConfigurationStatus, type PaymentConfigurationUpdateRequest, type PaymentConfigurationUpdateResponse, type PaymentConfigurationsResponse, PaymentsApi, type PaymentsClass, PhoneNumberApi, PhoneNumberButton, PhoneNumberClass, PhoneNumberField, PhoneNumberFieldsParam, PhoneNumberFilter, PhoneNumberResponse, PhoneNumberSettingsFieldsParam, PhoneNumberSettingsParams, PhoneNumberSettingsResponse, PhoneNumberSort, PhoneNumberStatus, PhoneNumbersListParams, PhoneNumbersResponse, PlatformType, type PreAcceptCallRequest, type ProcessedMessage, type ProcessedStatus, type ProductCardCarouselTemplateOptions, ProductCarouselCard, type ProductParameter, type ProductSection, QrCodeApi, type QrCodeClass, type QrCodeResponse, type QrCodesResponse, QualityRating, QualityScore, QuickReplyButton, type ReactionInfo, type ReactionMessage, type ReactionMessageHandler, type ReactionParams, type ReactionProcessedMessage, ReferralSourceTypes, ReferralSourceTypesEnum, ReferralSourceTypesType, RegistrationApi, type RegistrationClass, type RegistrationRequest, type RejectCallRequest, RejectSolutionRequest, ReleaseThreadControlParams, RemoveAssignedUserRequest, RequestCodeMethods, RequestCodeMethodsEnum, RequestCodeMethodsType, RequestPreVerifiedPhoneNumberCodeRequest, RequestVerificationCodeRequest, type RequesterClass, type RequesterResponseInterface, type ResponseData, type ResponseHeaderValue, type ResponseHeaders, type ResponseJSONBody, type ResponsePagination, type ResponseSuccess, SEND_MESSAGE_ERROR_CODES, SPMButton, type SPMTemplateOptions, SetOBOMobilityIntentRequest, SetSolutionMigrationIntentRequest, SharePreVerifiedPhoneNumberRequest, type SipServer, type SipSettings, type SipStatus, SolutionDeactivationRequest, SolutionFieldsParam, SolutionGraphObject, SolutionListParams, SolutionListResponse, SolutionMigrationIntent, SolutionsApi, SolutionsClass, Status, StatusEnum, type StatusHandler, type StatusParams, type StatusResponse, StatusType, type StatusWebhook, type StatusWebhookValue, type StickerMediaObject, StickerMediaTypes, StickerMediaTypesEnum, StickerMediaTypesType, type StickerMessage, type StickerMessageHandler, type StickerProcessedMessage, SubType, SubTypeEnum, SubTypeType, SystemChangeTypes, SystemChangeTypesEnum, SystemChangeTypesType, type SystemMessage, type SystemMessageHandler, type SystemProcessedMessage, THROTTLING_ERROR_CODES, TakeThreadControlParams, TemplateApi, TemplateBidSpec, TemplateBody, TemplateButton, TemplateButtons, TemplateCarousel, TemplateClass, TemplateDeleteParams, TemplateFooter, TemplateFormat, TemplateGetParams, TemplateHeader, TemplateHeaderExample, TemplateLimitedTimeOffer, TemplateOptimizationSpec, type TemplateOptions, type TemplateParameter, TemplateRequestBody, TemplateResponse, TemplateStatus, TemplateStatusEnum, TemplateStatusType, type TerminateCallRequest, type TextMessage, type TextMessageHandler, type TextMessageParams, type TextObject, type TextParameter, type TextProcessedMessage, ThreadControlApi, ThreadControlBaseParams, ThreadControlClass, ThreadControlResponse, ThreadControlRole, ThreadControlUserIdentifier, Throughput, ThroughputLevel, ThroughputResponse, TwoStepVerificationApi, type TwoStepVerificationClass, TwoStepVerificationParams, type TwoStepVerificationRequest, URLButton, UnblockUsersRequest, UnifiedCertStatus, type UnsupportedMessage, UpdateBusinessComplianceInfoRequest, type UpdateBusinessProfileRequest, type UpdateCallingSettingsRequest, type UpdateCommerceSettingsRequest, type UpdateFlowResponse, type UpdateGroupSettingsRequest, UpdateOfficialBusinessAccountStatusRequest, UpdatePhoneNumberSettingsRequest, UpdatePhoneNumberStatusRequest, type UpdateQrCodeRequest, UpdateUsernameRequest, UpdateWabaAccountRequest, UpdateWabaSubscription, UpdateWhatsAppBusinessProfileRequest, type UploadBusinessProfileResponse, type UploadHandle, type UploadMediaParams, UploadMediaResponse, type UploadSession, type UploadSessionResponse, UsernameResponse, UsernameStatus, UsernameSuggestionsResponse, UsernameTransferAction, type ValidateFlowJsonResponse, VerifyCodeRequest, VerifyPreVerifiedPhoneNumberCodeRequest, type VideoMediaObject, VideoMediaTypes, VideoMediaTypesEnum, VideoMediaTypesType, type VideoMessage, type VideoMessageHandler, type VideoProcessedMessage, WABAClass, WHATSAPP_ERROR_CODES, WabaAccount, WabaAccountFields, WabaAccountFieldsParam, WabaAccountReviewStatus, WabaAccountStatus, WabaApi, WabaBusinessVerificationStatus, WabaConfigEnum, type WabaConfigType, WabaFieldsParam, WabaGraphObject, WabaHealthStatus, WabaHealthStatusCanSendMessage, WabaHealthStatusEntity, WabaHealthStatusError, WabaListParams, WabaListResponse, WabaSubscription, WabaSubscriptions, type WebhookContact, type WebhookEvent, type WebhookHandlerContext, type WebhookMessage, type WebhookPayload, WebhookProcessor, type WebhookResponse, WebhookTypes, WebhookTypesEnum, WebhookTypesType, type WebhookValue, type WeeklyOperatingHours, WhatsApp, WhatsAppApiError, WhatsAppAuthorizationError, WhatsAppBlockUserError, WhatsAppCallingError, type WhatsAppConfig, WhatsAppError, type WhatsAppErrorCode, WhatsAppFlowError, WhatsAppGroupError, WhatsAppIntegrityError, type WhatsAppMessage, WhatsAppNetworkError, WhatsAppSendMessageError, WhatsAppThrottlingError, WhatsAppUnknownError, WhatsAppValidationError, buildFieldsQueryString, constructFullUrl, createAuthenticationTemplate, createCatalogTemplate, createCouponTemplate, createLimitedTimeOfferTemplate, createMPMTemplate, createMediaCardCarouselTemplate, createOTPTemplate, createProductCardCarouselTemplate, createSPMTemplate, createTemplate, createWhatsAppApiError, decryptFlowRequest, encryptFlowResponse, expressWebhookHandler, extractMessageText, formatConfigTable, generateEncryption, generateXHub256Sig, getContactsInfo, getInteractiveReply, getLocationInfo, getMediaInfo, getOrderInfo, getReactionInfo, isApiPermissionErrorCode, isAudioMessage, isAuthorizationErrorCode, isBlockUserErrorCode, isButtonMessage, isButtonReply, isCallingErrorCode, isContactsMessage, isDocumentMessage, isFlowDataExchangeRequest, isFlowErrorCode, isFlowErrorRequest, isFlowPingRequest, isGroupErrorCode, isImageMessage, isIntegrityErrorCode, isInteractiveMessage, isListReply, isLocationMessage, isMetaError, isNfmReply, isOrderMessage, isReactionMessage, isSendMessageErrorCode, isStickerMessage, isSystemMessage, isTextMessage, isThrottlingErrorCode, isVideoMessage, isWhatsAppApiErrorResponse, isWhatsAppAuthorizationError, isWhatsAppBlockUserError, isWhatsAppCallingError, isWhatsAppErrorCode, isWhatsAppFlowError, isWhatsAppGroupError, isWhatsAppIntegrityError, isWhatsAppSendMessageError, isWhatsAppThrottlingError, nextjsAppWebhookHandler, nextjsPagesWebhookHandler, normalizeMetaError, objectToQueryString, processFlowRequest, processWebhookMessages };
9979
+ export { AUTHORIZATION_ERROR_CODES, type AcceptCallRequest, AcceptSolutionRequest, AccountMode, AddPhoneNumbersRequest, type ApiPermissionErrorCode, AssignedUserRequest, AssignedUsersListParams, type AudioMediaObject, AudioMediaTypes, AudioMediaTypesEnum, AudioMediaTypesType, type AudioMessage, type AudioMessageHandler, type AudioProcessedMessage, type AuthenticationTemplateOptions, BLOCK_USER_ERROR_CODES, type BaseApiRequest, type BaseApiResponse, type BaseClass, BlockUserObject, BlockUsersApi, BlockUsersClass, BlockUsersRequest, BlockUsersResponse, BlockedUserInfo, type BodyOptions, BusinessApi, BusinessClass, BusinessComplianceInfoResponse, BusinessFieldsParam, BusinessGraphListResponse, BusinessGraphObject, BusinessListParams, BusinessProfileApi, type BusinessProfileClass, type BusinessProfileData, type BusinessProfileField, type BusinessProfileFieldsParam, type BusinessProfileResponse, BusinessVerticalEnum, type ButtonMessage, type ButtonMessageHandler, type ButtonOptions, ButtonPosition, ButtonPositionEnum, ButtonPositionType, type ButtonProcessedMessage, CALLING_ERROR_CODES, type CallAction, type CallActionResponse, type CallAnnouncementLanguage, type CallCaptureStatus, type CallHours, type CallHoursDay, type CallHoursStatus, type CallIconVisibility, type CallPermission, type CallPermissionAction, type CallPermissionLimit, type CallPermissionsResponse, type CallRecordingConfig, type CallSdpType, type CallSession, type CallTranscriptionConfig, type CallbackPermissionStatus, CallingApi, type CallingClass, type CallingSettings, type CallingSettingsResponse, type CallingStatus, CarouselCard, type CarouselOptions, CatalogButton, type CatalogTemplateOptions, Category, CategoryEnum, CategoryType, CodeVerificationStatus, CommerceApi, type CommerceClass, type CommerceSetting, type CommerceSettingsResponse, ComponentType, ComponentTypeType, ComponentTypes, ComponentTypesEnum, ContactBookApi, ContactBookClass, type ContactInfo, type ContactObject, type ContactsMessage, type ContactsMessageHandler, type ContactsProcessedMessage, ConversationTypes, ConversationTypesEnum, ConversationTypesType, ConversationalAutomationRequest, ConversationalAutomationResponse, ConversationalCommand, ConversationalPrompt, CopyCodeButton, type CouponTemplateOptions, type CreateFlowResponse, CreateOBOMobilityIntentRequest, CreatePhoneNumberRequest, CreatePhoneNumberResponse, type CreateQrCodeRequest, CreateScheduleRequest, type CreateUploadSessionParams, CreateWhatsAppBusinessSolutionRequest, CurrencyCodesEnum, type CurrencyParameter, CursorPaginationParams, Cursors, DataLocalizationRegion, DataLocalizationRegionEnum, DataLocalizationRegionType, type DateTimeParameter, DeleteContactBookEntryParams, DeleteContactBookEntryResponse, type DirectSendCategory, type DirectSendConfig, type DirectSendOptions, type DocumentMediaObject, DocumentMediaTypes, DocumentMediaTypesEnum, DocumentMediaTypesType, type DocumentMessage, type DocumentMessageHandler, type DocumentProcessedMessage, type EncryptedMessageRequest, type EncryptedMessagesResponse, EncryptionApi, type EncryptionClass, type EncryptionKeyPair, type EncryptionPublicKeyResponse, type ErrorWebhookValue, type ExpressRequest, type ExpressResponse, type ExpressWebhookConfig, FLOW_ERROR_CODES, FailedUserInfo, type Flow, FlowActionEnum, FlowApi, type FlowAsset, type FlowAssetsResponse, FlowButton, FlowCategoryEnum, type FlowClass, type FlowDataExchangeRequest, type FlowDataExchangeResponse, type FlowDecryptedRequestResponse, type FlowEncryptedRequestPayload, type FlowEndpointRequest, type FlowEndpointResponse, type FlowErrorNotificationRequest, type FlowErrorNotificationResponse, type FlowHandler, type FlowHealthCheckRequest, type FlowHealthCheckResponse, type FlowHttpRequest, type FlowMigrationFailure, type FlowMigrationResponse, type FlowMigrationResult, type FlowPreview, type FlowPreviewResponse, FlowStatusEnum, type FlowSuccessScreenResponse, type FlowType, FlowTypeEnum, type FlowValidationError, type FlowValidationErrorPointer, type FlowsListResponse, type FooterOptions, GROUP_ERROR_CODES, type GeneralHeaderInterface, type GeneralMessageBody, type GeneralRequestBody, type GetUploadHandleParams, GraphObject, type GroupCreateRequest, type GroupCreateResponse, type GroupInfoField, type GroupInfoFieldsParam, type GroupInfoResponse, type GroupInviteLinkResponse, type GroupJoinApprovalMode, type GroupJoinRequest, type GroupJoinRequestError, type GroupJoinRequestFailure, type GroupJoinRequestsActionResponse, type GroupJoinRequestsResponse, type GroupListParams, type GroupListResponse, type GroupMessage, type GroupParticipant, type GroupParticipantInput, type GroupParticipantsRequest, type GroupSettingsResponse, GroupsApi, type GroupsClass, type HeaderOptions, HealthStatus, HealthStatusEntity, type HolidaySchedule, HostPlatform, HttpMethods, HttpMethodsEnum, HttpMethodsType, type HttpsClientClass, type HttpsClientResponseClass, INTEGRITY_ERROR_CODES, type ImageMediaObject, ImageMediaTypes, ImageMediaTypesEnum, ImageMediaTypesType, type ImageMessage, type ImageMessageHandler, type ImageProcessedMessage, type InitiateCallRequest, type InitiateCallResponse, type InteractiveButtonReplyMessage, type InteractiveListReplyMessage, type InteractiveMessage, type InteractiveMessageHandler, type InteractiveObject, type InteractiveProcessedMessage, type InteractiveReply, InteractiveTypes, InteractiveTypesEnum, InteractiveTypesType, Languages, LanguagesEnum, LanguagesType, type LimitedTimeOfferOptions, type LimitedTimeOfferTemplateOptions, ListBlockedUsersParams, ListBlockedUsersResponse, type LocationInfo, type LocationMessage, type LocationMessageHandler, type LocationObject, type LocationParameter, type LocationProcessedMessage, Logger, type LoggerInterface, MPMButton, type MPMTemplateOptions, type MarketingMessageBidSpec, type MarketingMessageRequest, MarketingMessagesApi, type MarketingMessagesClass, type MarketingMessagesLinkClickData, MediaApi, type MediaCardCarouselTemplateOptions, MediaCarouselCard, MediaClass, type MediaInfo, type MediaParameter, MediaResponse, MediasResponse, MessagesApi as MessageApi, MessagesApi, MessageCategory, MessageCategoryEnum, MessageCategoryType, type MessageHandler, MessageHistoryApi, MessageHistoryClass, MessageHistoryEventListParams, MessageHistoryFieldsParam, MessageHistoryItem, MessageHistoryListParams, MessageHistoryResponse, type MessageRecipientType, type MessageRequestBody, type MessageRequestParams, type MessageStatus, MessageTemplateObject, MessageTemplateRequestBody, MessageTypes, MessageTypesEnum, MessageTypesType, type MessageWebhookValue, type MessagesClass, type MessagesResponse, MessagingLimitTier, type MetaError, type MetaErrorData, type MetaErrorDetail, type NextFunction, type NextJsAppWebhookConfig, type NextJsAppWebhookHandlers, type NextJsWebhookConfig, OTPButton, type OTPTemplateOptions, OfficialBusinessAccountAction, OfficialBusinessAccountApplicationData, OfficialBusinessAccountStatusResponse, OnboardPartnersToMMLiteRequest, type OrderInfo, type OrderMessage, type OrderMessageHandler, type OrderProcessedMessage, type Pagination, type PaginationCursors, type Paging, PagingCursors, PagingInfo, ParametersTypes, ParametersTypesEnum, ParametersTypesType, PassThreadControlParams, type PaymentConfiguration, type PaymentConfigurationCode, type PaymentConfigurationCreateRequest, type PaymentConfigurationCreateResponse, type PaymentConfigurationDeleteRequest, type PaymentConfigurationOauthLinkRequest, type PaymentConfigurationOauthLinkResponse, type PaymentConfigurationProvider, type PaymentConfigurationStatus, type PaymentConfigurationUpdateRequest, type PaymentConfigurationUpdateResponse, type PaymentConfigurationsResponse, PaymentsApi, type PaymentsClass, PhoneNumberApi, PhoneNumberButton, PhoneNumberClass, PhoneNumberField, PhoneNumberFieldsParam, PhoneNumberFilter, PhoneNumberResponse, PhoneNumberSettingsFieldsParam, PhoneNumberSettingsParams, PhoneNumberSettingsResponse, PhoneNumberSort, PhoneNumberStatus, PhoneNumbersListParams, PhoneNumbersResponse, PlatformType, type PreAcceptCallRequest, type ProcessedMessage, type ProcessedStatus, type ProcessedUserAction, type ProductCardCarouselTemplateOptions, ProductCarouselCard, type ProductParameter, type ProductSection, QrCodeApi, type QrCodeClass, type QrCodeResponse, type QrCodesResponse, QualityRating, QualityScore, QuickReplyButton, type ReactionInfo, type ReactionMessage, type ReactionMessageHandler, type ReactionParams, type ReactionProcessedMessage, ReferralSourceTypes, ReferralSourceTypesEnum, ReferralSourceTypesType, RegistrationApi, type RegistrationClass, type RegistrationRequest, type RejectCallRequest, RejectSolutionRequest, ReleaseThreadControlParams, RemoveAssignedUserRequest, RequestCodeMethods, RequestCodeMethodsEnum, RequestCodeMethodsType, RequestPreVerifiedPhoneNumberCodeRequest, RequestVerificationCodeRequest, type RequesterClass, type RequesterResponseInterface, type ResponseData, type ResponseHeaderValue, type ResponseHeaders, type ResponseJSONBody, type ResponsePagination, type ResponseSuccess, SEND_MESSAGE_ERROR_CODES, SPMButton, type SPMTemplateOptions, SetOBOMobilityIntentRequest, SetSolutionMigrationIntentRequest, SharePreVerifiedPhoneNumberRequest, type SipServer, type SipSettings, type SipStatus, SolutionDeactivationRequest, SolutionFieldsParam, SolutionGraphObject, SolutionListParams, SolutionListResponse, SolutionMigrationIntent, SolutionsApi, SolutionsClass, Status, StatusEnum, type StatusHandler, type StatusParams, type StatusResponse, StatusType, type StatusWebhook, type StatusWebhookValue, type StickerMediaObject, StickerMediaTypes, StickerMediaTypesEnum, StickerMediaTypesType, type StickerMessage, type StickerMessageHandler, type StickerProcessedMessage, SubType, SubTypeEnum, SubTypeType, SystemChangeTypes, SystemChangeTypesEnum, SystemChangeTypesType, type SystemMessage, type SystemMessageHandler, type SystemProcessedMessage, THROTTLING_ERROR_CODES, TakeThreadControlParams, TemplateApi, TemplateBidSpec, TemplateBody, TemplateButton, TemplateButtons, TemplateCarousel, TemplateClass, TemplateDeleteParams, TemplateFooter, TemplateFormat, TemplateGetParams, TemplateHeader, TemplateHeaderExample, TemplateLimitedTimeOffer, TemplateOptimizationSpec, type TemplateOptions, type TemplateParameter, TemplateRequestBody, TemplateResponse, TemplateStatus, TemplateStatusEnum, TemplateStatusType, type TerminateCallRequest, type TextMessage, type TextMessageHandler, type TextMessageParams, type TextObject, type TextParameter, type TextProcessedMessage, ThreadControlApi, ThreadControlBaseParams, ThreadControlClass, ThreadControlResponse, ThreadControlRole, ThreadControlUserIdentifier, Throughput, ThroughputLevel, ThroughputResponse, TwoStepVerificationApi, type TwoStepVerificationClass, TwoStepVerificationParams, type TwoStepVerificationRequest, URLButton, UnblockUsersRequest, UnifiedCertStatus, type UnsupportedMessage, UpdateBusinessComplianceInfoRequest, type UpdateBusinessProfileRequest, type UpdateCallingSettingsRequest, type UpdateCommerceSettingsRequest, type UpdateFlowResponse, type UpdateGroupSettingsRequest, UpdateOfficialBusinessAccountStatusRequest, UpdatePhoneNumberSettingsRequest, UpdatePhoneNumberStatusRequest, type UpdateQrCodeRequest, UpdateUsernameRequest, UpdateWabaAccountRequest, UpdateWabaSubscription, UpdateWhatsAppBusinessProfileRequest, type UploadBusinessProfileResponse, type UploadHandle, type UploadMediaParams, UploadMediaResponse, type UploadSession, type UploadSessionResponse, type UserAction, type UserActionHandler, type UserActionType, type UserActionsWebhookValue, UsernameResponse, UsernameStatus, UsernameSuggestionsResponse, UsernameTransferAction, type ValidateFlowJsonResponse, VerifyCodeRequest, VerifyPreVerifiedPhoneNumberCodeRequest, type VideoMediaObject, VideoMediaTypes, VideoMediaTypesEnum, VideoMediaTypesType, type VideoMessage, type VideoMessageHandler, type VideoProcessedMessage, WABAClass, WHATSAPP_ERROR_CODES, WabaAccount, WabaAccountFields, WabaAccountFieldsParam, WabaAccountReviewStatus, WabaAccountStatus, WabaApi, WabaBusinessVerificationStatus, WabaConfigEnum, type WabaConfigType, WabaFieldsParam, WabaGraphObject, WabaHealthStatus, WabaHealthStatusCanSendMessage, WabaHealthStatusEntity, WabaHealthStatusError, WabaListParams, WabaListResponse, WabaSubscription, WabaSubscriptions, type WebhookContact, type WebhookEvent, type WebhookHandlerContext, type WebhookMessage, type WebhookPayload, WebhookProcessor, type WebhookResponse, type WebhookSignatureOptions, WebhookTypes, WebhookTypesEnum, WebhookTypesType, type WebhookValue, type WeeklyOperatingHours, WhatsApp, WhatsApp as default, WhatsAppApiError, WhatsAppAuthorizationError, WhatsAppBlockUserError, WhatsAppCallingError, type WhatsAppConfig, WhatsAppError, type WhatsAppErrorCode, WhatsAppFlowError, WhatsAppGroupError, WhatsAppIntegrityError, type WhatsAppMessage, WhatsAppNetworkError, WhatsAppSendMessageError, WhatsAppThrottlingError, WhatsAppUnknownError, WhatsAppValidationError, buildFieldsQueryString, constructFullUrl, createAuthenticationTemplate, createCatalogTemplate, createCouponTemplate, createLimitedTimeOfferTemplate, createMPMTemplate, createMediaCardCarouselTemplate, createOTPTemplate, createProductCardCarouselTemplate, createSPMTemplate, createTemplate, createWhatsAppApiError, decryptFlowRequest, encryptFlowResponse, expressWebhookHandler, extractMessageText, formatConfigTable, generateEncryption, generateXHub256Sig, getContactsInfo, getInteractiveReply, getLocationInfo, getMediaInfo, getOrderInfo, getReactionInfo, isApiPermissionErrorCode, isAudioMessage, isAuthorizationErrorCode, isBlockUserErrorCode, isButtonMessage, isButtonReply, isCallingErrorCode, isContactsMessage, isDocumentMessage, isFlowDataExchangeRequest, isFlowErrorCode, isFlowErrorRequest, isFlowPingRequest, isGroupErrorCode, isImageMessage, isIntegrityErrorCode, isInteractiveMessage, isListReply, isLocationMessage, isMetaError, isNfmReply, isOrderMessage, isReactionMessage, isSendMessageErrorCode, isStickerMessage, isSystemMessage, isTextMessage, isThrottlingErrorCode, isValidWebhookSignature, isVideoMessage, isWhatsAppApiErrorResponse, isWhatsAppAuthorizationError, isWhatsAppBlockUserError, isWhatsAppCallingError, isWhatsAppErrorCode, isWhatsAppFlowError, isWhatsAppGroupError, isWhatsAppIntegrityError, isWhatsAppSendMessageError, isWhatsAppThrottlingError, nextjsAppWebhookHandler, nextjsPagesWebhookHandler, normalizeMetaError, objectToQueryString, processFlowRequest, processWebhookMessages };
9839
9980
  //# sourceMappingURL=index.d.mts.map