import { type PropertyType } from '@prisma/client'; export const AVM_SERVICE = Symbol('AVM_SERVICE'); export interface AVMParams { propertyId?: string; latitude?: number; longitude?: number; areaM2?: number; propertyType?: PropertyType; yearBuilt?: number; floor?: number; totalFloors?: number; } export interface Comparable { propertyId: string; address: string; district: string; priceVND: string; pricePerM2: number; areaM2: number; propertyType: PropertyType; distanceMeters: number; soldAt: string; } export interface ValuationResult { estimatedPrice: string; confidence: number; pricePerM2: number; comparables: Comparable[]; modelVersion: string; } export interface IAVMService { estimateValue(params: AVMParams): Promise; getComparables(propertyId: string, radiusMeters: number): Promise; }