// Copyright © 2022-2026 Partium, Inc. DBA Partium import { Observable } from "rxjs"; import { BaseLoginInitService, ServiceProvider } from "../../core"; import { Attribute } from "../models/attribute"; /** * Service for getting part attributes. * * @deprecated The operations of this service are not supported anymore and will be removed in the future. No replacement is planned. */ export interface PartAttributeService { /** * Will trigger loading the information of all requested parts from the backend. * * @param partPartiumId part id for which to load the attributes * @returns observable that emits when the requested part-attributes were loaded from the backend. * * @deprecated This function will not be supported anymore in the future. Use getPart method of PartService. */ getAttributesForPart(partPartiumId: string): Observable; } export declare class PartAttributeServiceImpl extends BaseLoginInitService implements PartAttributeService { private DOWNLOAD_PAGE_SIZE; private httpsService; constructor(serviceProvider: ServiceProvider); onCreate(): void; getAttributesForPart(partPartiumId: string): Observable; /** * Load all attributes of a part from the server. * Since the response is paginated, it is necessary to do as many request as needed until * all attributes are loaded. * * @returns observable that emits when the requested attributes were loaded */ private loadPartAttributesFromServer; /** * Sent request for one page of attributes * * @returns partPartiumId id of the Part * @param page the current page of the pagination (1-indexed) */ private requestPaginatedAttributes; }