import type { Timestamp } from 'firebase/firestore' export type UserProfile = { id: string name: string email: string emailVerified: boolean createdAt: Timestamp | Date } export type Farm = { id: string name: string ownerId: string joinCode: string address: string lat: number | null lng: number | null stateCode: string crops: string[] acreage?: number | null verificationStatus: 'unverified' createdAt: Timestamp | Date joinCodeUpdatedAt?: Timestamp | Date } export type FarmMember = { id: string farmId: string userId: string role: 'owner' | 'admin' | 'member' joinCodeUsed?: string approvedRequestId?: string joinedAt: Timestamp | Date } export type FarmAccessRequestStatus = 'pending' | 'approved' | 'denied' | 'expired' export type FarmAccessRequest = { id: string farmId: string requesterId: string ownerId: string status: FarmAccessRequestStatus farmName: string farmStateCode: string farmAddress: string requestedAt: Timestamp | Date requestExpiresAt: Timestamp | Date resolvedAt?: Timestamp | Date resolvedBy?: string } export type FarmSearchResult = { id: string farmId: string ownerId: string name: string address: string stateCode: string crops: string[] } export type Diagnosis = { id: string userId: string farmId: string crop: string disease: string confidence: number detectedAt: Timestamp | Date }