Added GetAvailableTimeslotsQuery, GetAvailableTimeslotsQueryInput, and GetAvailableTimeslotsQueryOutput to handle fetching available timeslots for a shop, improving the structure and separation of concerns.