/* eslint-disable local-rules/no-direct-api-import */
import { documentTypeDetailCache } from './document-type-detail.server.cache.js';
import { DocumentTypeService, } from '../../../../../core/backend-api/index.js';
import { UmbManagementApiDetailDataRequestManager, UmbManagementApiInFlightRequestCache, } from '../../../../../management-api/index.js';
export class UmbManagementApiDocumentTypeDetailDataRequestManager extends UmbManagementApiDetailDataRequestManager {
    static #inflightRequestCache = new UmbManagementApiInFlightRequestCache();
    constructor(host) {
        super(host, {
            create: (body) => DocumentTypeService.postDocumentType({ body }),
            read: (id) => DocumentTypeService.getDocumentTypeById({ path: { id } }),
            update: (id, body) => DocumentTypeService.putDocumentTypeById({ path: { id }, body }),
            delete: (id) => DocumentTypeService.deleteDocumentTypeById({ path: { id } }),
            readMany: (ids) => DocumentTypeService.getDocumentTypeBatch({ query: { id: ids } }),
            dataCache: documentTypeDetailCache,
            inflightRequestCache: UmbManagementApiDocumentTypeDetailDataRequestManager.#inflightRequestCache,
        });
    }
}
