import { PrismaService } from '../../../prisma/prisma.service';
export declare class DeliveryTrackingService {
    private readonly prisma;
    constructor(prisma: PrismaService);
    getTracking(orderId: string): Promise<{
        id: string;
        status: string;
        createdAt: Date;
        updatedAt: Date;
        orderId: string;
        driverName: string | null;
        driverPhone: string | null;
        currentLat: number | null;
        currentLng: number | null;
        etaMinutes: number | null;
        notes: string | null;
        notifiedAt: Date | null;
    } | null>;
    upsertTracking(orderId: string, data: {
        driverName?: string;
        driverPhone?: string;
        status?: string;
        currentLat?: number;
        currentLng?: number;
        etaMinutes?: number;
        notes?: string;
        notifiedAt?: Date;
    }): Promise<{
        id: string;
        status: string;
        createdAt: Date;
        updatedAt: Date;
        orderId: string;
        driverName: string | null;
        driverPhone: string | null;
        currentLat: number | null;
        currentLng: number | null;
        etaMinutes: number | null;
        notes: string | null;
        notifiedAt: Date | null;
    }>;
    getPublicTracking(orderId: string): Promise<{
        tracking: null;
        order: {
            business: {
                name: string;
            };
            id: string;
            status: string;
            orderNumber: string;
            customerName: string;
            deliveryAddress: string | null;
            deliveryLat: number | null;
            deliveryLng: number | null;
        };
    } | {
        tracking: {
            order: {
                business: {
                    name: string;
                };
                id: string;
                status: string;
                orderNumber: string;
                customerName: string;
                customerPhone: string;
                deliveryAddress: string | null;
                deliveryLat: number | null;
                deliveryLng: number | null;
            };
        } & {
            id: string;
            status: string;
            createdAt: Date;
            updatedAt: Date;
            orderId: string;
            driverName: string | null;
            driverPhone: string | null;
            currentLat: number | null;
            currentLng: number | null;
            etaMinutes: number | null;
            notes: string | null;
            notifiedAt: Date | null;
        };
        order: {
            business: {
                name: string;
            };
            id: string;
            status: string;
            orderNumber: string;
            customerName: string;
            customerPhone: string;
            deliveryAddress: string | null;
            deliveryLat: number | null;
            deliveryLng: number | null;
        };
    }>;
}
