import type { SupportedCurrencies } from './Contract'; import type { CountryCodes } from './CountryCodes'; export type RejectionReason = 'construction' | 'external_agency_stay' | 'owner_stay' | 'partially_available' | 'stay_duration' | 'type_of_stay' | 'other'; export type TypeOfStay = 'family' | 'family_and_friends' | 'friends' | 'corporate_event' | 'private_event' | null; export type State = 'waiting' | 'confirmed' | 'rejected' | 'expired'; export type AvailabilityRequest = { adminUserId: string | null; awaitingUserActionId: string | null; checkInDate: string; checkOutDate: string; clientNationality: CountryCodes | null; createdAt: string; currencyTrigram: SupportedCurrencies | null; houseContactId: string | null; houseId: string; houseName: string; id: string; netOwnerPrice: number | null; notes: string | null; numberOfAdults: number; numberOfBabies: number; numberOfChildren: number; numberOfPets: number; rejectionComment: string | null; rejectionReason: RejectionReason | null; repeatClient: boolean | null; state: State; typeOfStay: TypeOfStay; updatedAt: string; userId: string | null; };