UNPKG

@warriorteam/redai-zalo-sdk

Version:

Comprehensive TypeScript/JavaScript SDK for Zalo APIs - Official Account v3.0, ZNS with Full Type Safety, Consultation Service, Broadcast Service, Group Messaging with List APIs, Social APIs, Enhanced Article Management, Promotion Service v3.0 with Multip

96 lines 4.12 kB
/** * Type guard utilities for Zalo SDK webhook events * * This file provides type-safe functions to check webhook event types * and narrow down TypeScript types for better development experience. */ import { WebhookEvent, OAMessageWebhookEvent, UserMessageWebhookEvent, UserSendGroupTextEvent, UserSendGroupImageEvent, UserSendGroupVideoEvent, UserSendGroupAudioEvent, UserSendGroupFileEvent, OASendTextEvent, OASendImageEvent, OASendFileEvent, OASendStickerEvent, OASendGifEvent, OASendGroupTextEvent, OASendGroupImageEvent, OASendGroupFileEvent, OASendGroupStickerEvent, OASendGroupGifEvent } from '../types/webhook'; /** * Type union for user message events in groups */ export type UserGroupMessageEvent = UserSendGroupTextEvent | UserSendGroupImageEvent | UserSendGroupVideoEvent | UserSendGroupAudioEvent | UserSendGroupFileEvent; /** * Check if event is a user sending text message to group */ export declare function isUserSendGroupTextEvent(event: WebhookEvent): event is UserSendGroupTextEvent; /** * Check if event is a user sending image message to group */ export declare function isUserSendGroupImageEvent(event: WebhookEvent): event is UserSendGroupImageEvent; /** * Check if event is a user sending video message to group */ export declare function isUserSendGroupVideoEvent(event: WebhookEvent): event is UserSendGroupVideoEvent; /** * Check if event is a user sending audio message to group */ export declare function isUserSendGroupAudioEvent(event: WebhookEvent): event is UserSendGroupAudioEvent; /** * Check if event is a user sending file to group */ export declare function isUserSendGroupFileEvent(event: WebhookEvent): event is UserSendGroupFileEvent; /** * Check if event is any user group message event */ export declare function isUserGroupMessageEvent(event: WebhookEvent): event is UserGroupMessageEvent; /** * Check if event is OA sending text message to user */ export declare function isOASendTextEvent(event: WebhookEvent): event is OASendTextEvent; /** * Check if event is OA sending image message to user */ export declare function isOASendImageEvent(event: WebhookEvent): event is OASendImageEvent; /** * Check if event is OA sending file to user */ export declare function isOASendFileEvent(event: WebhookEvent): event is OASendFileEvent; /** * Check if event is OA sending sticker to user */ export declare function isOASendStickerEvent(event: WebhookEvent): event is OASendStickerEvent; /** * Check if event is OA sending GIF to user */ export declare function isOASendGifEvent(event: WebhookEvent): event is OASendGifEvent; /** * Check if event is OA sending text message to group */ export declare function isOASendGroupTextEvent(event: WebhookEvent): event is OASendGroupTextEvent; /** * Check if event is OA sending image to group */ export declare function isOASendGroupImageEvent(event: WebhookEvent): event is OASendGroupImageEvent; /** * Check if event is OA sending file to group */ export declare function isOASendGroupFileEvent(event: WebhookEvent): event is OASendGroupFileEvent; /** * Check if event is OA sending sticker to group */ export declare function isOASendGroupStickerEvent(event: WebhookEvent): event is OASendGroupStickerEvent; /** * Check if event is OA sending GIF to group */ export declare function isOASendGroupGifEvent(event: WebhookEvent): event is OASendGroupGifEvent; /** * Check if event is any OA message event (personal or group) */ export declare function isOAMessageEvent(event: WebhookEvent): event is OAMessageWebhookEvent; /** * Check if event is any user message event (personal or group) */ export declare function isUserMessageEvent(event: WebhookEvent): event is UserMessageWebhookEvent; /** * Check if event has message attachments */ export declare function hasAttachments(event: WebhookEvent): boolean; /** * Check if event is from a group context */ export declare function isFromGroup(event: WebhookEvent): boolean; /** * Check if event is from a personal context */ export declare function isFromPersonal(event: WebhookEvent): boolean; //# sourceMappingURL=type-guards.d.ts.map