export interface WhatsAppTemplateData {
    template: {
        headerText: string;
        messageBody: string;
        footerText: string;
    }
}

export interface WhatsAppTemplateResponse {
    success: boolean;
    data: WhatsAppTemplateData;
}

export interface UpdateWhatsAppTemplatePayload {
    headerText: string;
    messageBody: string;
    footerText: string;
}

// Draft Template Types
export interface TemplateDraftButton {
    type: "PHONE_NUMBER" | "URL" | "QUICK_REPLY";
    text: string;
    phone_number?: string;
    url?: string;
    payload?: string;
}

export interface TemplatePlaceholder {
    key: string;
    valueType: string;
    example?: string;
}

export interface TemplateDraftItem {
    _id: string;
    internalName: string;
    language: string;
    category: string;
    status: string;
    createdAt: string;
    updatedAt: string;
    name?: string;
    body?: string;
    header?: string;
    footer?: string;
    headerText?: string;
    messageBody?: string;
    footerText?: string;
    buttons?: TemplateDraftButton[];
    placeholders?: TemplatePlaceholder[];
    isPrimary?: boolean;
}

export interface TemplateDraftListResponse {
    templates: TemplateDraftItem[];
}

export interface CreateTemplateDraftPayload {
    name: string;
    body: string;
    category: string;
    buttons?: TemplateDraftButton[];
    header?: string;
    footer?: string;
    language: string;
    placeholders?: TemplatePlaceholder[];
    isPrimary?: boolean;
}

export type UpdateTemplateDraftPayload = CreateTemplateDraftPayload;
