@botonic/react
Version:
Build Chatbots using React
86 lines (85 loc) • 2.63 kB
TypeScript
export declare enum WhatsAppTemplateButtonSubType {
URL = "URL",
QUICK_REPLY = "QUICK_REPLY",
PHONE_NUMBER = "PHONE_NUMBER",
VOICE_CALL = "VOICE_CALL"
}
export declare enum WhatsAppTemplateParameterType {
PAYLOAD = "PAYLOAD",
TEXT = "TEXT",
IMAGE = "IMAGE",
VIDEO = "VIDEO",
DOCUMENT = "DOCUMENT"
}
export declare enum WhatsAppTemplateComponentType {
HEADER = "HEADER",
BODY = "BODY",
FOOTER = "FOOTER",
BUTTONS = "BUTTONS",
BUTTON = "BUTTON"
}
export interface WhatsappTemplateHeaderTextParameter {
type: WhatsAppTemplateParameterType.TEXT;
text: string;
}
export interface WhatsappTemplateHeaderImageParameter {
type: WhatsAppTemplateParameterType.IMAGE;
image: {
link: string;
};
}
export interface WhatsappTemplateHeaderVideoParameter {
type: WhatsAppTemplateParameterType.VIDEO;
video: {
link: string;
};
}
export interface WhatsappTemplateComponentHeader {
type: WhatsAppTemplateComponentType.HEADER;
parameters: WhatsappTemplateHeaderTextParameter[] | WhatsappTemplateHeaderImageParameter[] | WhatsappTemplateHeaderVideoParameter[];
}
export interface WhatsappTemplateComponentBody {
type: WhatsAppTemplateComponentType.BODY;
parameters: {
type: WhatsAppTemplateParameterType.TEXT;
parameter_name: string;
text: string;
}[];
}
export interface WhatsappTemplateComponentFooter {
type: WhatsAppTemplateComponentType.FOOTER;
parameters: {
type: WhatsAppTemplateParameterType.TEXT;
parameter_name: string;
text: string;
}[];
}
export interface WhatsappTemplateComponentButtons {
type: WhatsAppTemplateComponentType.BUTTONS;
buttons: WhatsappTemplateButton[];
}
export interface WhatsappTemplateQuickReplyButton {
type: WhatsAppTemplateComponentType.BUTTON;
sub_type: WhatsAppTemplateButtonSubType.QUICK_REPLY;
index: number;
parameters: {
type: WhatsAppTemplateParameterType.PAYLOAD;
payload: string;
}[];
}
export interface WhatsappTemplateUrlButton {
type: WhatsAppTemplateComponentType.BUTTON;
sub_type: WhatsAppTemplateButtonSubType.URL;
index: number;
parameters: {
type: WhatsAppTemplateParameterType.TEXT;
text: string;
}[];
}
export interface WhatsappTemplateVoiceCallButton {
type: WhatsAppTemplateComponentType.BUTTON;
sub_type: WhatsAppTemplateButtonSubType.VOICE_CALL;
index: number;
parameters: [];
}
export type WhatsappTemplateButton = WhatsappTemplateQuickReplyButton | WhatsappTemplateUrlButton | WhatsappTemplateVoiceCallButton;