import { Record } from '@fable-org/fable-library-js/Types.js';
import { FSharpList } from '@fable-org/fable-library-js/List.js';
import { Option } from '@fable-org/fable-library-js/Option.js';
import { MaterialAttributeValue } from './MaterialAttributeValue.fs.js';
import { MaterialType_$union } from './MaterialType.fs.js';
import { IComparable, IEquatable } from '@fable-org/fable-library-js/Util.js';
import { IISAPrintable } from '../Helper/Printer.fs.js';
import { TypeInfo } from '@fable-org/fable-library-js/Reflection.js';
import { OntologyAnnotation } from '../OntologyAnnotation.fs.js';
export declare class Material extends Record implements IEquatable<Material>, IComparable<Material>, IISAPrintable {
    readonly ID: Option<string>;
    readonly Name: Option<string>;
    readonly MaterialType: Option<MaterialType_$union>;
    readonly Characteristics: Option<FSharpList<MaterialAttributeValue>>;
    readonly DerivesFrom: Option<FSharpList<Material>>;
    constructor(ID: Option<string>, Name: Option<string>, MaterialType: Option<MaterialType_$union>, Characteristics: Option<FSharpList<MaterialAttributeValue>>, DerivesFrom: Option<FSharpList<Material>>);
    Print(): string;
    PrintCompact(): string;
}
export declare function Material_$reflection(): TypeInfo;
export declare function Material_make(id: Option<string>, name: Option<string>, materialType: Option<MaterialType_$union>, characteristics: Option<FSharpList<MaterialAttributeValue>>, derivesFrom: Option<FSharpList<Material>>): Material;
export declare function Material_create_Z66909A6D(Id?: string, Name?: string, MaterialType?: MaterialType_$union, Characteristics?: FSharpList<MaterialAttributeValue>, DerivesFrom?: FSharpList<Material>): Material;
export declare function Material_get_empty(): Material;
export declare function Material__get_NameText(this$: Material): string;
export declare function Material_getUnits_ZBCDEB61(m: Material): FSharpList<OntologyAnnotation>;
export declare function Material_setCharacteristicValues(values: FSharpList<MaterialAttributeValue>, m: Material): Material;
//# sourceMappingURL=Material.fs.d.ts.map