import { vi } from 'vitest'; import type { TimeSlot } from '@wix/auto_sdk_bookings_availability-time-slots'; import type { TimeSlotListServiceAPI, TimeSlotListServiceConfig } from '../../services/time-slot-list/time-slot-list.def.js'; import type { BookingService, BookingServiceConfig } from '../../services/booking/booking.js'; import { Signal } from '@wix/services-definitions/core-services/signals'; export type UnwrapSignal = T extends Signal ? U : T; export type UnwrapSignals = { [K in keyof T]: UnwrapSignal; }; type TimeSlotListState = UnwrapSignals>; /** * Creates a mock TimeSlotListService */ export declare function createMockTimeSlotListService(options?: Partial): { timeSlots: Signal; hasMore: Signal; isLoading: Signal; error: Signal; dateRange: Signal; actions: { loadMore: import("vitest").Mock<(...args: any[]) => any>; setDateRange: import("vitest").Mock<(...args: any[]) => any>; selectSlot: import("vitest").Mock<(...args: any[]) => any>; selectStaffMember: import("vitest").Mock<(...args: any[]) => any>; clearStaffSelection: import("vitest").Mock<(...args: any[]) => any>; }; }; export declare function createTimeSlotListService(overrides?: Partial): { service: TimeSlotListServiceAPI; bookingService: BookingService; }; /** * Setup client service mocks for TimeSlot core component tests * @param options - Optional configuration (timeSlot state + booking state) */ export declare function setupTimeSlotClientServiceMocks(options: Partial<{ timeSlot: TimeSlot; } & BookingServiceConfig> | undefined, mockUseService: ReturnType): { timeSlotService: { timeSlotSignal: Signal; }; timeSlotListService: { timeSlots: Signal; hasMore: Signal; isLoading: Signal; error: Signal; dateRange: Signal; actions: { loadMore: import("vitest").Mock<(...args: any[]) => any>; setDateRange: import("vitest").Mock<(...args: any[]) => any>; selectSlot: import("vitest").Mock<(...args: any[]) => any>; selectStaffMember: import("vitest").Mock<(...args: any[]) => any>; clearStaffSelection: import("vitest").Mock<(...args: any[]) => any>; }; }; bookingService: BookingService; }; /** * Setup client service mocks for TimeSlotList core component tests * @param options - Optional configuration for the mock state (TimeSlotList + Booking) */ export declare function setupTimeSlotListClientServiceMocks(options: Partial | undefined, mockUseService: ReturnType): { timeSlotListService: { timeSlots: Signal; hasMore: Signal; isLoading: Signal; error: Signal; dateRange: Signal; actions: { loadMore: import("vitest").Mock<(...args: any[]) => any>; setDateRange: import("vitest").Mock<(...args: any[]) => any>; selectSlot: import("vitest").Mock<(...args: any[]) => any>; selectStaffMember: import("vitest").Mock<(...args: any[]) => any>; clearStaffSelection: import("vitest").Mock<(...args: any[]) => any>; }; }; bookingService: BookingService; }; export {};