export type BusinessCategory = { id: string; slug: string; title: string; isActive: boolean; }; export type BusinessImage = { id: string; url: string; isCover: boolean; sortOrder: number; }; export type Business = { id: string; title: string; slug: string; description: string | null; contactPhone: string | null; address: string | null; latitude: number | null; longitude: number | null; isActive: boolean; categoryId: string; ownerId?: string | null; category?: BusinessCategory; images?: BusinessImage[]; }; export type BusinessRegistrationStatus = 'pending' | 'approved' | 'rejected'; export type BusinessRegistrationRequest = { id: string; applicantId: string; status: BusinessRegistrationStatus; title: string; slug: string; categoryId: string; description: string | null; contactPhone: string | null; address: string | null; adminNote: string | null; businessId: string | null; createdAt: string; category?: BusinessCategory; applicant?: { id: string; mobile: string; fullName: string | null }; }; export type CreateBusinessRegistrationPayload = { title: string; categoryId: string; slug?: string; description?: string; contactPhone?: string; address?: string; }; export type UpdateBusinessPayload = { title?: string; description?: string | null; contactPhone?: string | null; address?: string | null; latitude?: number | null; longitude?: number | null; }; export type ServiceTemplate = { id: string; title: string; slug: string; description: string | null; defaultDurationMinutes: number; }; export type BusinessService = { id: string; businessId: string; serviceTemplateId: string; price: string; durationMinutes: number | null; isActive: boolean; serviceTemplate?: ServiceTemplate; }; export type BusinessServiceRequestStatus = 'pending' | 'approved' | 'rejected'; export type BusinessServiceRequest = { id: string; businessId: string; requestedById: string; status: BusinessServiceRequestStatus; title: string; description: string | null; price: string; durationMinutes: number | null; adminNote: string | null; serviceTemplateId: string | null; businessServiceId: string | null; createdAt?: string; business?: Business; }; export type CreateBusinessServiceRequestPayload = { title: string; description?: string; price: number; durationMinutes?: number; }; export type BookingStatus = | 'pending' | 'confirmed' | 'cancelled' | 'completed'; export type Booking = { id: string; customerId: string; businessId: string; businessServiceId: string; scheduledAt: string; status: BookingStatus; note: string | null; createdAt?: string; updatedAt?: string; customer?: { id: string; mobile: string; fullName: string | null; }; business?: Business; businessService?: BusinessService; };