import type { CuiNullable } from '@cuby-ui/cdk'; import { Consumable } from './consumable'; import { Maintenance } from './maintenance'; import { Manufacturer } from './manufacturer'; import { Specification } from './specification'; import { Specifications } from './specifications'; export interface IntraLogistic { readonly id: string; readonly type: string; readonly name: string; readonly interLogisticsType: string; readonly shortName: string; readonly descriptionId?: CuiNullable; readonly pdmNumber: string; readonly transportSpecifications: TransportSpecifications; readonly manufacturers: Manufacturer[]; readonly analogues: string[]; readonly isDelete?: boolean; readonly maintainability?: MaintainabilityContent; readonly instructionStorageId?: CuiNullable; } export declare enum MaintainableContentType { MAINTAINABLE = "MAINTAINABLE", UNMAINTAINABLE = "NOT_MAINTAINABLE" } export interface TransportSpecifications extends Specifications { readonly loadingCapacity: CuiNullable; } export type MaintainabilityContent = MaintainableContent | UnmaintainableContent; export interface UnmaintainableContent { readonly id: string; readonly type: MaintainableContentType.UNMAINTAINABLE; readonly isDelete: boolean; readonly resource: null | string; } export interface MaintainableContent { readonly id: string; readonly type: MaintainableContentType.MAINTAINABLE; readonly isDelete: boolean; readonly maintenances: Maintenance[]; readonly spareParts: null | SpareParts; } export interface SpareParts { readonly servicePeriod: string; readonly consumables: Consumable[]; }