import type { ContractAttributes, ExpectedPayOut } from '@entities' import { endpointMaker } from '@services' import type { HttpClient } from '@services' import type { ApiError, Response } from '@types' type IncludesAvailable = 'contract' type GetExpectedPayOutByIdInput = { expectedPayOutId: string included?: { include?: IncludesAvailable[] fields?: Record } } export type GetExpectedPayOutByIdIncluded = { contracts: ContractAttributes } const getExpectedPayOut = (http: HttpClient) => ({ query: ( input: GetExpectedPayOutByIdInput, ): Promise< Response > => { const query = endpointMaker({ includes: input.included }) return http.get( `v3/admin/expected_pay_outs/${input.expectedPayOutId}${query}`, ) }, }) export default getExpectedPayOut