import type { Mesh } from './mesh'; import { ValidationError } from './errors'; import type { MaterialsExtensionResources } from './materials-extension/types'; /** * Supported object types in 3MF */ export declare enum ObjectType { Model = "model", SolidSupport = "solidsupport", Support = "support", Surface = "surface", Other = "other" } /** * Base material definition */ export interface BaseMaterial { name: string; displayColor: string; } /** * Base materials group */ export interface BaseMaterialsGroup { id: number; materials: BaseMaterial[]; } /** * Component reference with transformation */ export interface Component { objectId: number; transform?: string; path?: string; uuid?: string; } /** * Object resource interface */ export interface ObjectResource { id: number; type: ObjectType; name?: string; partnumber?: string; thumbnail?: string; pid?: number; pindex?: number; hasMesh: boolean; hasComponents: boolean; mesh?: Mesh; components?: Component[]; uuid?: string; } /** * Resources container */ export interface Resources extends MaterialsExtensionResources { baseMaterials: Map; objects: Map; } /** * Error thrown when resources parsing fails */ export declare class ResourcesParseError extends ValidationError { constructor(message: string); } /** * Parse resources from the model XML * @param modelXml The model XML object * @returns Resources object with base materials and objects * @throws ResourcesParseError if parsing fails or validation errors occur */ export declare function parseResources(modelXml: any): Resources; /** * Parse resources from model XML content * @param modelXmlContent The XML content of the 3D model part * @returns Resources object with base materials and objects * @throws ResourcesParseError if parsing fails or validation errors occur */ export declare function parseResourcesFromXml(modelXmlContent: string): Resources; //# sourceMappingURL=resources.d.ts.map