import type { CuiNullable } from '@cuby-ui/cdk'; export interface Group extends SimpleGroup { readonly jtext: string; readonly structure: GroupBox[]; } export interface GroupPart extends SimpleGroup { readonly sizeStructure?: number; } export interface SimpleGroup { readonly id: string; readonly name: string; readonly attributes: Record; readonly componentType: string; } export interface GroupBox extends GroupBoxPart { readonly id: string; readonly contentType: string; readonly quantumFormalizations: GroupBoxFormalization[]; } export interface GroupBoxPart { readonly subjectElement: GroupBoxSubject; readonly contentQuantumId: string; } export type GroupSubjectType = 'MATERIAL' | 'PART'; export interface GroupBoxSubject { readonly itemId: string; readonly contentType: GroupSubjectType; } export interface GroupBoxFormalization { readonly id?: string; readonly quantumId: string; readonly specification?: GroupBoxSpecification; } export interface GroupBoxSpecification { readonly parameter: GroupBoxSpecificationParameter; } export interface GroupBoxSpecificationParameter { readonly fileDXF: CuiNullable; readonly size: CuiNullable; readonly quantity: CuiNullable; } export interface AddGroupBoxFormalizationRequestParams extends FormalizationRequestIds { readonly quantumId: string; readonly body: GroupBoxRequestSpecification; } export interface UpdateGroupBoxFormalizationRequestParams extends FormalizationRequestIds { readonly formalizationId: string; readonly body: GroupBoxRequestSpecification; } export interface DeleteGroupBoxFormalizationRequestParams extends FormalizationRequestIds { readonly formalizationId: string; } export interface FormalizationRequestIds { readonly phaseId: string; readonly jobId: string; readonly groupId: string; readonly boxId: string; } export interface GroupBoxRequestSpecification { readonly parameter: GroupBoxRequestSpecificationParameter; readonly fileDXF: CuiNullable; } export interface GroupBoxRequestSpecificationParameter { readonly size: CuiNullable; readonly quantity: number; readonly type_operations: FormalizationTypeOperations; } export declare const enum FormalizationTypeOperations { PART = "PART_QUANTUM_FORMALIZATION", MATERIAL = "MATERIAL_QUANTUM_FORMALIZATION" }