import { ApiRootLinkRel, ApiRootResource, ApiRootService } from '@alfa-client/api-root-shared'; import { ApiResourceService, ResourceRepository, ResourceServiceConfig, } from '@alfa-client/tech-shared'; import { ConfigurationResource } from './configuration.model'; export class ConfigurationResourceService extends ApiResourceService< ApiRootResource, ConfigurationResource > {} export function createConfigurationResourceService( repository: ResourceRepository, apiRootService: ApiRootService, ) { return new ApiResourceService(buildConfig(apiRootService), repository); } function buildConfig(apiRootService: ApiRootService): ResourceServiceConfig<ApiRootResource> { return { resource: apiRootService.getApiRoot(), getLinkRel: ApiRootLinkRel.CONFIGURATION, }; }