/* eslint-disable local-rules/no-direct-api-import */
import { memberTypeDetailCache } from './member-type-detail.server.cache.js';
import { MemberTypeService, } from '../../../../../core/backend-api/index.js';
import { UmbManagementApiDetailDataRequestManager, UmbManagementApiInFlightRequestCache, } from '../../../../../management-api/index.js';
export class UmbManagementApiMemberTypeDetailDataRequestManager extends UmbManagementApiDetailDataRequestManager {
    static #inflightRequestCache = new UmbManagementApiInFlightRequestCache();
    constructor(host) {
        super(host, {
            create: (body) => MemberTypeService.postMemberType({ body }),
            read: (id) => MemberTypeService.getMemberTypeById({ path: { id } }),
            update: (id, body) => MemberTypeService.putMemberTypeById({ path: { id }, body }),
            delete: (id) => MemberTypeService.deleteMemberTypeById({ path: { id } }),
            readMany: (ids) => MemberTypeService.getMemberTypeBatch({ query: { id: ids } }),
            dataCache: memberTypeDetailCache,
            inflightRequestCache: UmbManagementApiMemberTypeDetailDataRequestManager.#inflightRequestCache,
        });
    }
}
