Skip to content

Hooks

useBookableEntities

Fetch a list of bookable entities by type.

const { entities, isLoading, error, pagination } = useBookableEntities('court');

Parameters:

ParameterTypeDescription
typestringBookable type slug

Returns: { entities: BookableEntity[], isLoading: boolean, error: Error | null, pagination: PaginationInfo }

useBookableEntity

Fetch a single bookable entity by ID.

const { entity, isLoading } = useBookableEntity(42);

useBookableVariants

Fetch variants for a bookable entity.

const { variants, isLoading } = useBookableVariants(entityId);

useEffectiveAvailability

Get computed availability for an entity or variant, accounting for all layers.

const { availability, isLoading } = useEffectiveAvailability({
entityId: 42,
startDate: '2026-03-21',
endDate: '2026-03-28',
});

useSlideout

Manage slideout panel state.

const { isOpen, content, open, close } = useSlideout();