import type { AvailabilityRequest } from '@entities' import type { FilterType, HttpClient, IncludeType } from '@services' import { endpointMaker } from '@services' import type { ApiError, Response } from '@types' export type GetAvailabilityRequestByIdInput = { availabilityRequestId: string filters?: FilterType includes?: IncludeType } export type AvailabilityRequestIncluded = Record< 'houses' | 'adminUsers', Record > const getAvailabilityRequestById = (http: HttpClient) => { return { query: ( input: GetAvailabilityRequestByIdInput, ): Promise< Response > => { const query = endpointMaker({ filter: input.filters, includes: input.includes, }) return http.get( `v3/user/availability_requests/${input.availabilityRequestId}${query}`, ) }, } } export default getAvailabilityRequestById