import { PrismaService } from '../../../prisma/prisma.service';
export interface SessionData {
    customerName?: string;
    deliveryMethod?: string;
    deliveryAddress?: string;
    deliveryLat?: number;
    deliveryLng?: number;
    selectedCategoryId?: string;
    selectedProductId?: string;
    lastProductList?: string[];
    lastCategoryList?: string[];
    pendingOrderId?: string;
    pendingPaymentRef?: string;
    ecocashNumber?: string;
    amount?: number;
    currency?: string;
}
export declare class WhatsAppSessionService {
    private readonly prisma;
    constructor(prisma: PrismaService);
    getOrCreateSession(businessId: string, whatsappNumber: string, customerId: string): Promise<{
        id: string;
        createdAt: Date;
        updatedAt: Date;
        businessId: string;
        customerId: string;
        whatsappNumber: string;
        currentStep: string;
        sessionDataJson: string;
        expiresAt: Date;
    }>;
    updateStep(sessionId: string, step: string): Promise<{
        id: string;
        createdAt: Date;
        updatedAt: Date;
        businessId: string;
        customerId: string;
        whatsappNumber: string;
        currentStep: string;
        sessionDataJson: string;
        expiresAt: Date;
    }>;
    updateSessionData(sessionId: string, data: Partial<SessionData>): Promise<{
        id: string;
        createdAt: Date;
        updatedAt: Date;
        businessId: string;
        customerId: string;
        whatsappNumber: string;
        currentStep: string;
        sessionDataJson: string;
        expiresAt: Date;
    } | null>;
    clearSession(sessionId: string): Promise<{
        id: string;
        createdAt: Date;
        updatedAt: Date;
        businessId: string;
        customerId: string;
        whatsappNumber: string;
        currentStep: string;
        sessionDataJson: string;
        expiresAt: Date;
    }>;
}
