/**
 * Automatically generated type guard functions for enums and interfaces
*/
export function isAddResultStatus(_arg: unknown): _arg is AddResultStatus {
	return _arg === "success" ||
	_arg === "unsupportedFormat" ||
	_arg === "versionMismatch" ||
	_arg === "inconsistentGraph" ||
	_arg === "undefinedError" ||
	_arg === "unsupportedVersion";
}
export function isBendDieChoiceType(_arg: unknown): _arg is BendDieChoiceType {
	return _arg === "database" ||
	_arg === "neutralAxis";
}
export function isBendLineEngravingMode(_arg: unknown): _arg is BendLineEngravingMode {
	return _arg === "none" ||
	_arg === "upwardOnly" ||
	_arg === "downwardOnly" ||
	_arg === "all";
}
export function isCadFeatureType(_arg: unknown): _arg is CadFeatureType {
	return _arg === "countersinking" ||
	_arg === "throughHole";
}
export function isCamCommandType(_arg: unknown): _arg is CamCommandType {
	return _arg === "setColor";
}
export function isColor(_arg: unknown): _arg is Color {
	return _arg === "black" ||
	_arg === "white" ||
	_arg === "green" ||
	_arg === "yellow" ||
	_arg === "cyan" ||
	_arg === "blue" ||
	_arg === "magenta" ||
	_arg === "none" ||
	_arg === "red" ||
	_arg === "lightgrey" ||
	_arg === "lime" ||
	_arg === "turquoise" ||
	_arg === "violet" ||
	_arg === "saddlebrown" ||
	_arg === "darkorange" ||
	_arg === "sienna" ||
	_arg === "closedContour" ||
	_arg === "closedInnerContour" ||
	_arg === "closedOuterContour" ||
	_arg === "openContour" ||
	_arg === "engraving" ||
	_arg === "bendLine" ||
	_arg === "bendLineUp" ||
	_arg === "bendLineDown" ||
	_arg === "darkGreen";
}
export function isDatabasePermission(_arg: unknown): _arg is DatabasePermission {
	return _arg === "read" ||
	_arg === "write";
}
export function isDatabaseType(_arg: unknown): _arg is DatabaseType {
	return _arg === "mssql";
}
export function isDocXImageType(_arg: unknown): _arg is DocXImageType {
	return _arg === "png";
}
export function isDocXTableCellType(_arg: unknown): _arg is DocXTableCellType {
	return _arg === "text" ||
	_arg === "image" ||
	_arg === "tables";
}
export function isDocumentAlignment(_arg: unknown): _arg is DocumentAlignment {
	return _arg === "left" ||
	_arg === "center" ||
	_arg === "right";
}
export function isDocumentImageType(_arg: unknown): _arg is DocumentImageType {
	return _arg === "png" ||
	_arg === "svg";
}
export function isDocumentItemType(_arg: unknown): _arg is DocumentItemType {
	return _arg === "paragraph" ||
	_arg === "heading" ||
	_arg === "table" ||
	_arg === "image" ||
	_arg === "barcode" ||
	_arg === "separator" ||
	_arg === "pageBreak";
}
export function isDocumentOrientation(_arg: unknown): _arg is DocumentOrientation {
	return _arg === "portrait" ||
	_arg === "landscape";
}
export function isFeature(_arg: unknown): _arg is Feature {
	return _arg === "bendMeasurementScene" ||
	_arg === "bomExport" ||
	_arg === "graphRepExport" ||
	_arg === "unlimitedNumExports" ||
	_arg === "httpServiceUnfold" ||
	_arg === "httpServiceNestor" ||
	_arg === "httpServiceAssemblyTree" ||
	_arg === "httpServiceClassifier" ||
	_arg === "lstExport" ||
	_arg === "erpInterfaceItBlech" ||
	_arg === "tubeDetection" ||
	_arg === "quotationExport" ||
	_arg === "developmentAccount";
}
export function isFileDialogType(_arg: unknown): _arg is FileDialogType {
	return _arg === "openFile" ||
	_arg === "openFiles" ||
	_arg === "saveFile" ||
	_arg === "directory";
}
export function isFileSystemPathType(_arg: unknown): _arg is FileSystemPathType {
	return _arg === "directory" ||
	_arg === "openFile" ||
	_arg === "saveFile";
}
export function isFileType(_arg: unknown): _arg is FileType {
	return _arg === "svg" ||
	_arg === "dxf" ||
	_arg === "step" ||
	_arg === "png" ||
	_arg === "geo";
}
export function isFormWidgetType(_arg: unknown): _arg is FormWidgetType {
	return _arg === "checkBox" ||
	_arg === "spinBox" ||
	_arg === "dropDown" ||
	_arg === "lineEdit" ||
	_arg === "textEdit" ||
	_arg === "label";
}
export function isGeometryEntityType(_arg: unknown): _arg is GeometryEntityType {
	return _arg === "edge" ||
	_arg === "face";
}
export function isGeometrySelectorConfigFlag(_arg: unknown): _arg is GeometrySelectorConfigFlag {
	return _arg === "edge" ||
	_arg === "face";
}
export function isGraphCreatorInputType(_arg: unknown): _arg is GraphCreatorInputType {
	return _arg === "step" ||
	_arg === "twoDimRep" ||
	_arg === "extrusion";
}
export function isGraphNodeProcessingState(_arg: unknown): _arg is GraphNodeProcessingState {
	return _arg === "CreateWorkStep" ||
	_arg === "UpdateWorkStep" ||
	_arg === "CreateSources" ||
	_arg === "FillFromSources" ||
	_arg === "AfterFillFromSources" ||
	_arg === "Finished";
}
export function isInputType(_arg: unknown): _arg is InputType {
	return _arg === "undefined" ||
	_arg === "documentGraph" ||
	_arg === "assembly" ||
	_arg === "layered" ||
	_arg === "twoDimRep";
}
export function isLocaleType(_arg: unknown): _arg is LocaleType {
	return _arg === "language" ||
	_arg === "csv";
}
export function isLstEvaporateMode(_arg: unknown): _arg is LstEvaporateMode {
	return _arg === "none" ||
	_arg === "early" ||
	_arg === "beforeEachPart";
}
export function isMessageBoxType(_arg: unknown): _arg is MessageBoxType {
	return _arg === "info" ||
	_arg === "warning" ||
	_arg === "error" ||
	_arg === "question";
}
export function isNodeConstraint(_arg: unknown): _arg is NodeConstraint {
	return _arg === "bendDeductionThicknessInBounds" ||
	_arg === "bendDiesAssigned" ||
	_arg === "bendFlangeLengthInBounds" ||
	_arg === "bendLineLengthInBounds" ||
	_arg === "contourBendZoneUnaffected" ||
	_arg === "sheetCuttingContourSizeInBounds" ||
	_arg === "editingStateOk" ||
	_arg === "dimensionsInBounds" ||
	_arg === "materialsCompatible" ||
	_arg === "sheetCuttingThicknessInBounds" ||
	_arg === "tubeCuttingProfileSupported" ||
	_arg === "semimanufacturedAvailable" ||
	_arg === "sheetCuttingProcessCompatible" ||
	_arg === "tubeCuttingProcessCompatible" ||
	_arg === "tubeDetectionLicensed" ||
	_arg === "unfoldingSimple";
}
export function isNodeDatumType(_arg: unknown): _arg is NodeDatumType {
	return _arg === "processId" ||
	_arg === "sheetMaterialId" ||
	_arg === "tubeMaterialId" ||
	_arg === "tubeSpecificationId" ||
	_arg === "sheetTappingData" ||
	_arg === "dieChoiceMap";
}
export function isNodeEditingStateEntryType(_arg: unknown): _arg is NodeEditingStateEntryType {
	return _arg === "missingDatum" ||
	_arg === "invalidDatum";
}
export function isNodeUserDataKey(_arg: unknown): _arg is NodeUserDataKey {
	return _arg === "attachments" ||
	_arg === "bendLineEngravingMode" ||
	_arg === "comment" ||
	_arg === "deburrDoubleSided" ||
	_arg === "fixedRotations" ||
	_arg === "numCountersinks" ||
	_arg === "numThreads" ||
	_arg === "purchasePartMaterialId" ||
	_arg === "sheetFilterSheetIds" ||
	_arg === "sheetMaterialId" ||
	_arg === "sheetTappingData" ||
	_arg === "testReportRequired" ||
	_arg === "tubeMaterialId" ||
	_arg === "tubeSpecificationId" ||
	_arg === "userDefinedMaterialCostsPerPiece" ||
	_arg === "userDefinedScalePrices" ||
	_arg === "userDefinedSetupTime" ||
	_arg === "userDefinedUnitTimePerPiece";
}
export function isPrivateGuiDataType(_arg: unknown): _arg is PrivateGuiDataType {
	return _arg === "graphRep";
}
export function isPrivateMainWindowMenuType(_arg: unknown): _arg is PrivateMainWindowMenuType {
	return _arg === "fileRun" ||
	_arg === "fileExport";
}
export function isProcessType(_arg: unknown): _arg is ProcessType {
	return _arg === "undefined" ||
	_arg === "manufacturing" ||
	_arg === "semiManufactured" ||
	_arg === "sheetCutting" ||
	_arg === "laserSheetCutting" ||
	_arg === "joining" ||
	_arg === "externalPart" ||
	_arg === "sheet" ||
	_arg === "userDefinedBaseType" ||
	_arg === "assembling" ||
	_arg === "forceFitting" ||
	_arg === "joiningByWelding" ||
	_arg === "joiningByBrazing" ||
	_arg === "bonding" ||
	_arg === "autogenousWelding" ||
	_arg === "arcWelding" ||
	_arg === "gasShieldedWelding" ||
	_arg === "migWelding" ||
	_arg === "magWelding" ||
	_arg === "tigWelding" ||
	_arg === "plasmaWelding" ||
	_arg === "laserWelding" ||
	_arg === "weldingWithPressure" ||
	_arg === "resistanceWelding" ||
	_arg === "studWelding" ||
	_arg === "forming" ||
	_arg === "bendForming" ||
	_arg === "bendingWithoutTool" ||
	_arg === "dieBending" ||
	_arg === "sheetMetalFolding" ||
	_arg === "cutting" ||
	_arg === "removalOperation" ||
	_arg === "plasmaSheetCutting" ||
	_arg === "waterJetSheetCutting" ||
	_arg === "machining" ||
	_arg === "milling" ||
	_arg === "turning" ||
	_arg === "drilling" ||
	_arg === "threading" ||
	_arg === "mechanicalDeburring" ||
	_arg === "cleaning" ||
	_arg === "coating" ||
	_arg === "sprayPainting" ||
	_arg === "powderCoating" ||
	_arg === "sheetBending" ||
	_arg === "transport" ||
	_arg === "packaging" ||
	_arg === "automaticMechanicalDeburring" ||
	_arg === "manualMechanicalDeburring" ||
	_arg === "userDefinedMachining" ||
	_arg === "userDefinedThreading" ||
	_arg === "userDefinedCountersinking" ||
	_arg === "slideGrinding" ||
	_arg === "sheetTapping" ||
	_arg === "userDefinedTube" ||
	_arg === "tube" ||
	_arg === "tubeCutting";
}
export function isReplyStateIndicatorJoining(_arg: unknown): _arg is ReplyStateIndicatorJoining {
	return _arg === "undefinedError";
}
export function isReplyStateIndicatorPackaging(_arg: unknown): _arg is ReplyStateIndicatorPackaging {
	return _arg === "undefinedError" ||
	_arg === "insufficientPackageVolume" ||
	_arg === "overweightParts";
}
export function isReplyStateIndicatorSheet(_arg: unknown): _arg is ReplyStateIndicatorSheet {
	return _arg === "undefinedError" ||
	_arg === "nestingFailed";
}
export function isReplyStateIndicatorSheetBending(_arg: unknown): _arg is ReplyStateIndicatorSheetBending {
	return _arg === "undefinedError" ||
	_arg === "multipleOuterContours" ||
	_arg === "contourInBend" ||
	_arg === "invalidBend" ||
	_arg === "undetectedFeatures" ||
	_arg === "unfoldingFailed" ||
	_arg === "bendDeductionApplicationFailed";
}
export function isReplyStateIndicatorSheetCutting(_arg: unknown): _arg is ReplyStateIndicatorSheetCutting {
	return _arg === "undefinedError" ||
	_arg === "undetectedFeatures" ||
	_arg === "multipleOuterContours" ||
	_arg === "unused0";
}
export function isReplyStateIndicatorTransform(_arg: unknown): _arg is ReplyStateIndicatorTransform {
	return _arg === "undefinedError";
}
export function isReplyStateIndicatorTube(_arg: unknown): _arg is ReplyStateIndicatorTube {
	return _arg === "undefinedError";
}
export function isReplyStateIndicatorTubeCutting(_arg: unknown): _arg is ReplyStateIndicatorTubeCutting {
	return _arg === "undefinedError" ||
	_arg === "undetectedFeatures";
}
export function isReplyStateIndicatorUndefined(_arg: unknown): _arg is ReplyStateIndicatorUndefined {
	return _arg === "undefinedError";
}
export function isReplyStateIndicatoruserDefined(_arg: unknown): _arg is ReplyStateIndicatoruserDefined {
	return _arg === "undefinedError";
}
export function isReplyStateIndicatoruserDefinedBase(_arg: unknown): _arg is ReplyStateIndicatoruserDefinedBase {
	return _arg === "undefinedError";
}
export function isSceneElement(_arg: unknown): _arg is SceneElement {
	return _arg === "cuttingContours" ||
	_arg === "engravings" ||
	_arg === "sheetBendingBendLineLabels" ||
	_arg === "sheetBendingBendZones" ||
	_arg === "sheetBendingDieAffectedSegments" ||
	_arg === "sheetBendingLowerDieAffectZones" ||
	_arg === "sheetBendingOverlappingAreas" ||
	_arg === "tubeCuttingTubeContours" ||
	_arg === "tubeCuttingVirtualCuts";
}
export function isSegmentType(_arg: unknown): _arg is SegmentType {
	return _arg === "line" ||
	_arg === "arc";
}
export function isSettingsTableKey(_arg: unknown): _arg is SettingsTableKey {
	return _arg === "bendFlangeSafetyDistance" ||
	_arg === "dieBendingSetupTimeDistributionEnabled" ||
	_arg === "tubeClampingLength";
}
export function isSheetCorner(_arg: unknown): _arg is SheetCorner {
	return _arg === "lowerLeft" ||
	_arg === "upperLeft" ||
	_arg === "lowerRight" ||
	_arg === "upperRight";
}
export function isSheetUpperSideStrategy(_arg: unknown): _arg is SheetUpperSideStrategy {
	return _arg === "preferUpwardBends" ||
	_arg === "preferDownwardBends" ||
	_arg === "preferConvexity" ||
	_arg === "preferConcavity";
}
export function isStrokeStyle(_arg: unknown): _arg is StrokeStyle {
	return _arg === "continuous" ||
	_arg === "dashed";
}
export function isTableErrorType(_arg: unknown): _arg is TableErrorType {
	return _arg === "referringEntryMissing" ||
	_arg === "referredEntryMissing" ||
	_arg === "valueInvalid" ||
	_arg === "uniqueMemberCollision";
}
export function isTableMergeMode(_arg: unknown): _arg is TableMergeMode {
	return _arg === "update" ||
	_arg === "upsert";
}
export function isTableType(_arg: unknown): _arg is TableType {
	return _arg === "sheetMaterial" ||
	_arg === "sheetMaterialDensity" ||
	_arg === "sheetCuttingMaterialMapping" ||
	_arg === "sheetBendingMaterialMapping" ||
	_arg === "bendTime" ||
	_arg === "bendTimeParameters" ||
	_arg === "bendRateParameters" ||
	_arg === "bendLineConstraint" ||
	_arg === "laserSheetCuttingGas" ||
	_arg === "laserSheetCuttingSpeed" ||
	_arg === "laserSheetCuttingPierceTime" ||
	_arg === "laserSheetCuttingRate" ||
	_arg === "laserSheetCuttingMinArea" ||
	_arg === "laserSheetCuttingMaxThickness" ||
	_arg === "packaging" ||
	_arg === "transportationCosts" ||
	_arg === "surcharge" ||
	_arg === "process" ||
	_arg === "processRate" ||
	_arg === "processSetupTimeFallback" ||
	_arg === "processUnitTimeFallback" ||
	_arg === "sheet" ||
	_arg === "sheetModulus" ||
	_arg === "sheetPrice" ||
	_arg === "upperDieGroup" ||
	_arg === "lowerDieGroup" ||
	_arg === "bendDeduction" ||
	_arg === "setting" ||
	_arg === "automaticMechanicalDeburringMaterial" ||
	_arg === "automaticMechanicalDeburringParameters" ||
	_arg === "dimensionConstraints" ||
	_arg === "screwThread" ||
	_arg === "tappingTimeParameters" ||
	_arg === "tubeMaterial" ||
	_arg === "tubeMaterialDensity" ||
	_arg === "tubeProfile" ||
	_arg === "tubeSpecification" ||
	_arg === "tube" ||
	_arg === "upperDie" ||
	_arg === "lowerDie" ||
	_arg === "upperDieUnit" ||
	_arg === "lowerDieUnit" ||
	_arg === "processHandlingTime" ||
	_arg === "sheetStock" ||
	_arg === "processIdlePeriod" ||
	_arg === "sheetMaterialScrapValue" ||
	_arg === "sheetPriority" ||
	_arg === "dieGroupPriority" ||
	_arg === "sheetCuttingMaterial" ||
	_arg === "sheetBendingMaterial" ||
	_arg === "tubeCuttingProcess" ||
	_arg === "tubeCuttingProcessMapping" ||
	_arg === "tubeCuttingSpeed" ||
	_arg === "tubeCuttingPierceTime" ||
	_arg === "tubePrice" ||
	_arg === "tubeStock" ||
	_arg === "tubeMaterialScrapValue" ||
	_arg === "sheetCuttingProcess" ||
	_arg === "sheetCuttingProcessMapping" ||
	_arg === "sheetCuttingMotionParameters" ||
	_arg === "sheetCuttingProcessToLaserCuttingGas" ||
	_arg === "purchasePartMaterial" ||
	_arg === "processConstraintsSheetMaterial" ||
	_arg === "processConstraintsTubeMaterial" ||
	_arg === "processConstraintsPurchasePartMaterial" ||
	_arg === "consumable" ||
	_arg === "processConsumableRate" ||
	_arg === "sheetCuttingProcessConsumableRate" ||
	_arg === "tubeCuttingProcessConsumableRate" ||
	_arg === "sheetCuttingThicknessConstraints";
}
export function isTrumpfLoadingSystem(_arg: unknown): _arg is TrumpfLoadingSystem {
	return _arg === "manual" ||
	_arg === "paletteChange" ||
	_arg === "paletteChangeLiftMaster" ||
	_arg === "onePalette" ||
	_arg === "paletteChangeLiftMasterSort" ||
	_arg === "paletteChangeLiftMasterSortPullingDevice";
}
export function isTubeProfileGeometryType(_arg: unknown): _arg is TubeProfileGeometryType {
	return _arg === "rectangular" ||
	_arg === "circular";
}
export function isTwoDimImportResultType(_arg: unknown): _arg is TwoDimImportResultType {
	return _arg === "partInvalid" ||
	_arg === "engravingInvalid" ||
	_arg === "success";
}
export function isUserDatumType(_arg: unknown): _arg is UserDatumType {
	return _arg === "string" ||
	_arg === "number" ||
	_arg === "boolean" ||
	_arg === "enumeration";
}
export function isWidgetType(_arg: unknown): _arg is WidgetType {
	return _arg === "assemblyView" ||
	_arg === "attachmentEditor" ||
	_arg === "bendingToolEditor" ||
	_arg === "bulkEditor" ||
	_arg === "calcParamEditor" ||
	_arg === "fileDialog" ||
	_arg === "formEditor" ||
	_arg === "geometrySelector" ||
	_arg === "geometryColorSelector" ||
	_arg === "joiningSequenceEditor" ||
	_arg === "layeredImportDialog" ||
	_arg === "messageBox" ||
	_arg === "processSelector" ||
	_arg === "sheetFilterEditor" ||
	_arg === "sheetTappingEditor" ||
	_arg === "userDataConfigEditor";
}
export function isWorkStepType(_arg: unknown): _arg is WorkStepType {
	return _arg === "undefined" ||
	_arg === "sheet" ||
	_arg === "sheetCutting" ||
	_arg === "joining" ||
	_arg === "tubeCutting" ||
	_arg === "sheetBending" ||
	_arg === "userDefined" ||
	_arg === "userDefinedBase" ||
	_arg === "packaging" ||
	_arg === "transform" ||
	_arg === "tube";
}
export function isDatabasePermissions(_arg: unknown): _arg is DatabasePermissions {
	return ((a: unknown): a is DatabasePermissions => { if (typeof a !== "object" || a === null) { return false; } for (const key in a) { if (!isDatabasePermission(key)) { continue; } if (!((a: unknown): a is boolean => typeof a === "boolean")((a as any)[key])) { return false; } } return true; })(_arg);
}
export function isGeometrySelectorConfigFlags(_arg: unknown): _arg is GeometrySelectorConfigFlags {
	return ((a: unknown): a is GeometrySelectorConfigFlags => { if (typeof a !== "object" || a === null) { return false; } for (const key in a) { if (!isGeometrySelectorConfigFlag(key)) { continue; } if (!((a: unknown): a is boolean => typeof a === "boolean")((a as any)[key])) { return false; } } return true; })(_arg);
}
export function isSceneElements(_arg: unknown): _arg is SceneElements {
	return ((a: unknown): a is SceneElements => { if (typeof a !== "object" || a === null) { return false; } for (const key in a) { if (!isSceneElement(key)) { continue; } if (!((a: unknown): a is boolean => typeof a === "boolean")((a as any)[key])) { return false; } } return true; })(_arg);
}
export function isStringIndexedInterface(_arg: unknown): _arg is StringIndexedInterface {
	if (typeof _arg !== "object" || _arg === null) {
		return false;
	}
	for (const key in _arg) {
		if (typeof key !== "string") return false;
	}
	return true;
}
export function isAnyTable(_arg: unknown): _arg is AnyTable {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && "content" in _arg && isTableType(_arg.type) && (() : boolean => {
	switch (_arg.type) {
		case "sheetMaterial" : return ((a: unknown): a is (SheetMaterial)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetMaterial => !isSheetMaterial(e)) === undefined)(_arg.content);
		case "sheetMaterialDensity" : return ((a: unknown): a is (SheetMaterialDensity)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetMaterialDensity => !isSheetMaterialDensity(e)) === undefined)(_arg.content);
		case "sheetCuttingMaterialMapping" : return ((a: unknown): a is (SheetCuttingMaterialMapping)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetCuttingMaterialMapping => !isSheetCuttingMaterialMapping(e)) === undefined)(_arg.content);
		case "sheetBendingMaterialMapping" : return ((a: unknown): a is (SheetBendingMaterialMapping)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetBendingMaterialMapping => !isSheetBendingMaterialMapping(e)) === undefined)(_arg.content);
		case "bendTime" : return ((a: unknown): a is (BendTime)[] => Array.isArray(a) && a.find((e: unknown) : e is BendTime => !isBendTime(e)) === undefined)(_arg.content);
		case "bendTimeParameters" : return ((a: unknown): a is (BendTimeParameters)[] => Array.isArray(a) && a.find((e: unknown) : e is BendTimeParameters => !isBendTimeParameters(e)) === undefined)(_arg.content);
		case "bendRateParameters" : return ((a: unknown): a is (BendRateParameters)[] => Array.isArray(a) && a.find((e: unknown) : e is BendRateParameters => !isBendRateParameters(e)) === undefined)(_arg.content);
		case "bendLineConstraint" : return ((a: unknown): a is (BendLineConstraint)[] => Array.isArray(a) && a.find((e: unknown) : e is BendLineConstraint => !isBendLineConstraint(e)) === undefined)(_arg.content);
		case "laserSheetCuttingGas" : return ((a: unknown): a is (LaserSheetCuttingGas)[] => Array.isArray(a) && a.find((e: unknown) : e is LaserSheetCuttingGas => !isLaserSheetCuttingGas(e)) === undefined)(_arg.content);
		case "laserSheetCuttingSpeed" : return ((a: unknown): a is (LaserSheetCuttingSpeed)[] => Array.isArray(a) && a.find((e: unknown) : e is LaserSheetCuttingSpeed => !isLaserSheetCuttingSpeed(e)) === undefined)(_arg.content);
		case "laserSheetCuttingPierceTime" : return ((a: unknown): a is (LaserSheetCuttingPierceTime)[] => Array.isArray(a) && a.find((e: unknown) : e is LaserSheetCuttingPierceTime => !isLaserSheetCuttingPierceTime(e)) === undefined)(_arg.content);
		case "laserSheetCuttingRate" : return ((a: unknown): a is (LaserSheetCuttingRate)[] => Array.isArray(a) && a.find((e: unknown) : e is LaserSheetCuttingRate => !isLaserSheetCuttingRate(e)) === undefined)(_arg.content);
		case "laserSheetCuttingMinArea" : return ((a: unknown): a is (LaserSheetCuttingMinArea)[] => Array.isArray(a) && a.find((e: unknown) : e is LaserSheetCuttingMinArea => !isLaserSheetCuttingMinArea(e)) === undefined)(_arg.content);
		case "laserSheetCuttingMaxThickness" : return ((a: unknown): a is (LaserSheetCuttingMaxThickness)[] => Array.isArray(a) && a.find((e: unknown) : e is LaserSheetCuttingMaxThickness => !isLaserSheetCuttingMaxThickness(e)) === undefined)(_arg.content);
		case "packaging" : return ((a: unknown): a is (Packaging)[] => Array.isArray(a) && a.find((e: unknown) : e is Packaging => !isPackaging(e)) === undefined)(_arg.content);
		case "transportationCosts" : return ((a: unknown): a is (TransportationCosts)[] => Array.isArray(a) && a.find((e: unknown) : e is TransportationCosts => !isTransportationCosts(e)) === undefined)(_arg.content);
		case "surcharge" : return ((a: unknown): a is (Surcharge)[] => Array.isArray(a) && a.find((e: unknown) : e is Surcharge => !isSurcharge(e)) === undefined)(_arg.content);
		case "process" : return ((a: unknown): a is (Process)[] => Array.isArray(a) && a.find((e: unknown) : e is Process => !isProcess(e)) === undefined)(_arg.content);
		case "processRate" : return ((a: unknown): a is (ProcessRate)[] => Array.isArray(a) && a.find((e: unknown) : e is ProcessRate => !isProcessRate(e)) === undefined)(_arg.content);
		case "processSetupTimeFallback" : return ((a: unknown): a is (ProcessSetupTimeFallback)[] => Array.isArray(a) && a.find((e: unknown) : e is ProcessSetupTimeFallback => !isProcessSetupTimeFallback(e)) === undefined)(_arg.content);
		case "processUnitTimeFallback" : return ((a: unknown): a is (ProcessUnitTimeFallback)[] => Array.isArray(a) && a.find((e: unknown) : e is ProcessUnitTimeFallback => !isProcessUnitTimeFallback(e)) === undefined)(_arg.content);
		case "sheet" : return ((a: unknown): a is (Sheet)[] => Array.isArray(a) && a.find((e: unknown) : e is Sheet => !isSheet(e)) === undefined)(_arg.content);
		case "sheetModulus" : return ((a: unknown): a is (SheetModulus)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetModulus => !isSheetModulus(e)) === undefined)(_arg.content);
		case "sheetPrice" : return ((a: unknown): a is (SheetPrice)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetPrice => !isSheetPrice(e)) === undefined)(_arg.content);
		case "upperDieGroup" : return ((a: unknown): a is (UpperDieGroup)[] => Array.isArray(a) && a.find((e: unknown) : e is UpperDieGroup => !isUpperDieGroup(e)) === undefined)(_arg.content);
		case "lowerDieGroup" : return ((a: unknown): a is (LowerDieGroup)[] => Array.isArray(a) && a.find((e: unknown) : e is LowerDieGroup => !isLowerDieGroup(e)) === undefined)(_arg.content);
		case "bendDeduction" : return ((a: unknown): a is (BendDeduction)[] => Array.isArray(a) && a.find((e: unknown) : e is BendDeduction => !isBendDeduction(e)) === undefined)(_arg.content);
		case "setting" : return ((a: unknown): a is (Setting)[] => Array.isArray(a) && a.find((e: unknown) : e is Setting => !isSetting(e)) === undefined)(_arg.content);
		case "automaticMechanicalDeburringMaterial" : return ((a: unknown): a is (AutomaticMechanicalDeburringMaterial)[] => Array.isArray(a) && a.find((e: unknown) : e is AutomaticMechanicalDeburringMaterial => !isAutomaticMechanicalDeburringMaterial(e)) === undefined)(_arg.content);
		case "automaticMechanicalDeburringParameters" : return ((a: unknown): a is (AutomaticMechanicalDeburringParameters)[] => Array.isArray(a) && a.find((e: unknown) : e is AutomaticMechanicalDeburringParameters => !isAutomaticMechanicalDeburringParameters(e)) === undefined)(_arg.content);
		case "dimensionConstraints" : return ((a: unknown): a is (DimensionConstraints)[] => Array.isArray(a) && a.find((e: unknown) : e is DimensionConstraints => !isDimensionConstraints(e)) === undefined)(_arg.content);
		case "screwThread" : return ((a: unknown): a is (ScrewThread)[] => Array.isArray(a) && a.find((e: unknown) : e is ScrewThread => !isScrewThread(e)) === undefined)(_arg.content);
		case "tappingTimeParameters" : return ((a: unknown): a is (TappingTimeParameters)[] => Array.isArray(a) && a.find((e: unknown) : e is TappingTimeParameters => !isTappingTimeParameters(e)) === undefined)(_arg.content);
		case "tubeMaterial" : return ((a: unknown): a is (TubeMaterial)[] => Array.isArray(a) && a.find((e: unknown) : e is TubeMaterial => !isTubeMaterial(e)) === undefined)(_arg.content);
		case "tubeMaterialDensity" : return ((a: unknown): a is (TubeMaterialDensity)[] => Array.isArray(a) && a.find((e: unknown) : e is TubeMaterialDensity => !isTubeMaterialDensity(e)) === undefined)(_arg.content);
		case "tubeProfile" : return ((a: unknown): a is (TubeProfile)[] => Array.isArray(a) && a.find((e: unknown) : e is TubeProfile => !isTubeProfile(e)) === undefined)(_arg.content);
		case "tubeSpecification" : return ((a: unknown): a is (TubeSpecification)[] => Array.isArray(a) && a.find((e: unknown) : e is TubeSpecification => !isTubeSpecification(e)) === undefined)(_arg.content);
		case "tube" : return ((a: unknown): a is (Tube)[] => Array.isArray(a) && a.find((e: unknown) : e is Tube => !isTube(e)) === undefined)(_arg.content);
		case "upperDie" : return ((a: unknown): a is (UpperDie)[] => Array.isArray(a) && a.find((e: unknown) : e is UpperDie => !isUpperDie(e)) === undefined)(_arg.content);
		case "lowerDie" : return ((a: unknown): a is (LowerDie)[] => Array.isArray(a) && a.find((e: unknown) : e is LowerDie => !isLowerDie(e)) === undefined)(_arg.content);
		case "upperDieUnit" : return ((a: unknown): a is (UpperDieUnit)[] => Array.isArray(a) && a.find((e: unknown) : e is UpperDieUnit => !isUpperDieUnit(e)) === undefined)(_arg.content);
		case "lowerDieUnit" : return ((a: unknown): a is (LowerDieUnit)[] => Array.isArray(a) && a.find((e: unknown) : e is LowerDieUnit => !isLowerDieUnit(e)) === undefined)(_arg.content);
		case "processHandlingTime" : return ((a: unknown): a is (ProcessHandlingTime)[] => Array.isArray(a) && a.find((e: unknown) : e is ProcessHandlingTime => !isProcessHandlingTime(e)) === undefined)(_arg.content);
		case "sheetStock" : return ((a: unknown): a is (SheetStock)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetStock => !isSheetStock(e)) === undefined)(_arg.content);
		case "processIdlePeriod" : return ((a: unknown): a is (ProcessIdlePeriod)[] => Array.isArray(a) && a.find((e: unknown) : e is ProcessIdlePeriod => !isProcessIdlePeriod(e)) === undefined)(_arg.content);
		case "sheetMaterialScrapValue" : return ((a: unknown): a is (SheetMaterialScrapValue)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetMaterialScrapValue => !isSheetMaterialScrapValue(e)) === undefined)(_arg.content);
		case "sheetPriority" : return ((a: unknown): a is (SheetPriority)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetPriority => !isSheetPriority(e)) === undefined)(_arg.content);
		case "dieGroupPriority" : return ((a: unknown): a is (DieGroupPriority)[] => Array.isArray(a) && a.find((e: unknown) : e is DieGroupPriority => !isDieGroupPriority(e)) === undefined)(_arg.content);
		case "sheetCuttingMaterial" : return ((a: unknown): a is (SheetCuttingMaterial)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetCuttingMaterial => !isSheetCuttingMaterial(e)) === undefined)(_arg.content);
		case "sheetBendingMaterial" : return ((a: unknown): a is (SheetBendingMaterial)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetBendingMaterial => !isSheetBendingMaterial(e)) === undefined)(_arg.content);
		case "tubeCuttingProcess" : return ((a: unknown): a is (TubeCuttingProcess)[] => Array.isArray(a) && a.find((e: unknown) : e is TubeCuttingProcess => !isTubeCuttingProcess(e)) === undefined)(_arg.content);
		case "tubeCuttingProcessMapping" : return ((a: unknown): a is (TubeCuttingProcessMapping)[] => Array.isArray(a) && a.find((e: unknown) : e is TubeCuttingProcessMapping => !isTubeCuttingProcessMapping(e)) === undefined)(_arg.content);
		case "tubeCuttingSpeed" : return ((a: unknown): a is (TubeCuttingSpeed)[] => Array.isArray(a) && a.find((e: unknown) : e is TubeCuttingSpeed => !isTubeCuttingSpeed(e)) === undefined)(_arg.content);
		case "tubeCuttingPierceTime" : return ((a: unknown): a is (TubeCuttingPierceTime)[] => Array.isArray(a) && a.find((e: unknown) : e is TubeCuttingPierceTime => !isTubeCuttingPierceTime(e)) === undefined)(_arg.content);
		case "tubePrice" : return ((a: unknown): a is (TubePrice)[] => Array.isArray(a) && a.find((e: unknown) : e is TubePrice => !isTubePrice(e)) === undefined)(_arg.content);
		case "tubeStock" : return ((a: unknown): a is (TubeStock)[] => Array.isArray(a) && a.find((e: unknown) : e is TubeStock => !isTubeStock(e)) === undefined)(_arg.content);
		case "tubeMaterialScrapValue" : return ((a: unknown): a is (TubeMaterialScrapValue)[] => Array.isArray(a) && a.find((e: unknown) : e is TubeMaterialScrapValue => !isTubeMaterialScrapValue(e)) === undefined)(_arg.content);
		case "sheetCuttingProcess" : return ((a: unknown): a is (SheetCuttingProcess)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetCuttingProcess => !isSheetCuttingProcess(e)) === undefined)(_arg.content);
		case "sheetCuttingProcessMapping" : return ((a: unknown): a is (SheetCuttingProcessMapping)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetCuttingProcessMapping => !isSheetCuttingProcessMapping(e)) === undefined)(_arg.content);
		case "sheetCuttingMotionParameters" : return ((a: unknown): a is (SheetCuttingMotionParameters)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetCuttingMotionParameters => !isSheetCuttingMotionParameters(e)) === undefined)(_arg.content);
		case "sheetCuttingProcessToLaserCuttingGas" : return ((a: unknown): a is (SheetCuttingProcessToLaserCuttingGas)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetCuttingProcessToLaserCuttingGas => !isSheetCuttingProcessToLaserCuttingGas(e)) === undefined)(_arg.content);
		case "purchasePartMaterial" : return ((a: unknown): a is (PurchasePartMaterial)[] => Array.isArray(a) && a.find((e: unknown) : e is PurchasePartMaterial => !isPurchasePartMaterial(e)) === undefined)(_arg.content);
		case "processConstraintsSheetMaterial" : return ((a: unknown): a is (ProcessConstraintsSheetMaterial)[] => Array.isArray(a) && a.find((e: unknown) : e is ProcessConstraintsSheetMaterial => !isProcessConstraintsSheetMaterial(e)) === undefined)(_arg.content);
		case "processConstraintsTubeMaterial" : return ((a: unknown): a is (ProcessConstraintsTubeMaterial)[] => Array.isArray(a) && a.find((e: unknown) : e is ProcessConstraintsTubeMaterial => !isProcessConstraintsTubeMaterial(e)) === undefined)(_arg.content);
		case "processConstraintsPurchasePartMaterial" : return ((a: unknown): a is (ProcessConstraintsPurchasePartMaterial)[] => Array.isArray(a) && a.find((e: unknown) : e is ProcessConstraintsPurchasePartMaterial => !isProcessConstraintsPurchasePartMaterial(e)) === undefined)(_arg.content);
		case "consumable" : return ((a: unknown): a is (Consumable)[] => Array.isArray(a) && a.find((e: unknown) : e is Consumable => !isConsumable(e)) === undefined)(_arg.content);
		case "processConsumableRate" : return ((a: unknown): a is (ProcessConsumableRate)[] => Array.isArray(a) && a.find((e: unknown) : e is ProcessConsumableRate => !isProcessConsumableRate(e)) === undefined)(_arg.content);
		case "sheetCuttingProcessConsumableRate" : return ((a: unknown): a is (SheetCuttingProcessConsumableRate)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetCuttingProcessConsumableRate => !isSheetCuttingProcessConsumableRate(e)) === undefined)(_arg.content);
		case "tubeCuttingProcessConsumableRate" : return ((a: unknown): a is (TubeCuttingProcessConsumableRate)[] => Array.isArray(a) && a.find((e: unknown) : e is TubeCuttingProcessConsumableRate => !isTubeCuttingProcessConsumableRate(e)) === undefined)(_arg.content);
		case "sheetCuttingThicknessConstraints" : return ((a: unknown): a is (SheetCuttingThicknessConstraints)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetCuttingThicknessConstraints => !isSheetCuttingThicknessConstraints(e)) === undefined)(_arg.content);
	}})()
;
}
export function isArcSegment(_arg: unknown): _arg is ArcSegment {
	return typeof _arg === "object" && _arg !== null && "from" in _arg && isPoint2(_arg.from)
		&& "to" in _arg && isPoint2(_arg.to)
		&& "center" in _arg && isPoint2(_arg.center)
		&& "ccw" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.ccw);
}
export function isArticleAttributes(_arg: unknown): _arg is ArticleAttributes {
	return typeof _arg === "object" && _arg !== null && "userData" in _arg && isStringIndexedInterface(_arg.userData);
}
export function isArticleUpdate(_arg: unknown): _arg is ArticleUpdate {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is Vertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("articleUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.articleUserData) );
}
export function isAssemblyMapEntry(_arg: unknown): _arg is AssemblyMapEntry {
	return typeof _arg === "object" && _arg !== null && "id" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.id)
		&& "assembly" in _arg && ((a: unknown): a is Assembly => (typeof a === "object" && a !== null))(_arg.assembly);
}
export function isAssemblyPath(_arg: unknown): _arg is AssemblyPath {
	return typeof _arg === "object" && _arg !== null && "indices" in _arg && ((a: unknown): a is (number)[] => Array.isArray(a) && a.find((e: unknown) : e is number => !((a: unknown): a is number => typeof a === "number")(e)) === undefined)(_arg.indices);
}
export function isAttachment(_arg: unknown): _arg is Attachment {
	return typeof _arg === "object" && _arg !== null && "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "data" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.data);
}
export function isAutomaticMechanicalDeburringMaterialUniqueMembers(_arg: unknown): _arg is AutomaticMechanicalDeburringMaterialUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetMaterialId);
}
export function isAutomaticMechanicalDeburringMaterial(_arg: unknown): _arg is AutomaticMechanicalDeburringMaterial {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetMaterialId)
		&& "automaticMechanicalDeburringMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.automaticMechanicalDeburringMaterialId);
}
export function isAutomaticMechanicalDeburringParametersUniqueMembers(_arg: unknown): _arg is AutomaticMechanicalDeburringParametersUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "automaticMechanicalDeburringMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.automaticMechanicalDeburringMaterialId);
}
export function isAutomaticMechanicalDeburringParameters(_arg: unknown): _arg is AutomaticMechanicalDeburringParameters {
	return (typeof _arg === "object" && _arg !== null)
		&& "automaticMechanicalDeburringMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.automaticMechanicalDeburringMaterialId)
		&& "maxDimY" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.maxDimY)
		&& "unitTimeBase" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.unitTimeBase)
		&& "speed" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.speed);
}
export function isBendDeductionUniqueMembers(_arg: unknown): _arg is BendDeductionUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetBendingMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetBendingMaterialId)
		&& "upperDieGroupId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.upperDieGroupId)
		&& "lowerDieGroupId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.lowerDieGroupId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "bendAngle" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.bendAngle);
}
export function isBendDeduction(_arg: unknown): _arg is BendDeduction {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetBendingMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetBendingMaterialId)
		&& "upperDieGroupId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.upperDieGroupId)
		&& "lowerDieGroupId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.lowerDieGroupId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "bendAngle" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.bendAngle)
		&& "innerRadius" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.innerRadius)
		&& "sharpDeduction" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.sharpDeduction);
}
export function isBendDieAffectDistanceEntry(_arg: unknown): _arg is BendDieAffectDistanceEntry {
	return typeof _arg === "object" && _arg !== null && "bendDescriptor" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.bendDescriptor)
		&& "affectDistance" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.affectDistance);
}
export function isBendDieChoice(_arg: unknown): _arg is BendDieChoice {
	return typeof _arg === "object" && _arg !== null && "baseClass" in _arg && isCamBendDeduction(_arg.baseClass)
		&& "upperDieGroupId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.upperDieGroupId)
		&& "lowerDieGroupId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.lowerDieGroupId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "type" in _arg && isBendDieChoiceType(_arg.type)
		&& "sharpDeduction" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.sharpDeduction);
}
export function isBendLineConstraintUniqueMembers(_arg: unknown): _arg is BendLineConstraintUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetBendingMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetBendingMaterialId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness);
}
export function isBendLineConstraint(_arg: unknown): _arg is BendLineConstraint {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetBendingMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetBendingMaterialId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "maxNetLength" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.maxNetLength);
}
export function isBendLineData(_arg: unknown): _arg is BendLineData {
	return typeof _arg === "object" && _arg !== null && "constructedInnerRadius" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.constructedInnerRadius)
		&& "resultingInnerRadius" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.resultingInnerRadius)
		&& "bendAngle" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.bendAngle)
		&& "bendDescriptor" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.bendDescriptor);
}
export function isBendLineFlangeLength(_arg: unknown): _arg is BendLineFlangeLength {
	return typeof _arg === "object" && _arg !== null && "flangeLengthLhs" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.flangeLengthLhs)
		&& "flangeLengthRhs" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.flangeLengthRhs)
		&& "bendDescriptor" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.bendDescriptor);
}
export function isBendLineSegmentsMapEntry(_arg: unknown): _arg is BendLineSegmentsMapEntry {
	return typeof _arg === "object" && _arg !== null && "bendDescriptor" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.bendDescriptor)
		&& "segments" in _arg && ((a: unknown): a is (Segment)[] => Array.isArray(a) && a.find((e: unknown) : e is Segment => !isSegment(e)) === undefined)(_arg.segments);
}
export function isBendRateParametersUniqueMembers(_arg: unknown): _arg is BendRateParametersUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetBendingMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetBendingMaterialId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "bendLineNetLength" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.bendLineNetLength);
}
export function isBendRateParameters(_arg: unknown): _arg is BendRateParameters {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetBendingMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetBendingMaterialId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "bendLineNetLength" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.bendLineNetLength)
		&& "hourlyRateFactor" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.hourlyRateFactor)
		&& "hourlyRateDelta" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.hourlyRateDelta);
}
export function isBendReplyStateContentBendDeductionApplicationFailed(_arg: unknown): _arg is BendReplyStateContentBendDeductionApplicationFailed {
	return true;
}
export function isBendReplyStateContentContourInBend(_arg: unknown): _arg is BendReplyStateContentContourInBend {
	return true;
}
export function isBendReplyStateContentInvalidBend(_arg: unknown): _arg is BendReplyStateContentInvalidBend {
	return true;
}
export function isBendReplyStateContentMultipleOuterContours(_arg: unknown): _arg is BendReplyStateContentMultipleOuterContours {
	return true;
}
export function isBendReplyStateContentUndefinedError(_arg: unknown): _arg is BendReplyStateContentUndefinedError {
	return true;
}
export function isBendReplyStateContentUndetectedFeatures(_arg: unknown): _arg is BendReplyStateContentUndetectedFeatures {
	return typeof _arg === "object" && _arg !== null && "unassignedFaceDescriptors" in _arg && ((a: unknown): a is (number)[] => Array.isArray(a) && a.find((e: unknown) : e is number => !((a: unknown): a is number => typeof a === "number")(e)) === undefined)(_arg.unassignedFaceDescriptors);
}
export function isBendReplyStateContentUnfoldingFailed(_arg: unknown): _arg is BendReplyStateContentUnfoldingFailed {
	return true;
}
export function isBendTimeUniqueMembers(_arg: unknown): _arg is BendTimeUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "mass" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.mass);
}
export function isBendTime(_arg: unknown): _arg is BendTime {
	return (typeof _arg === "object" && _arg !== null)
		&& "mass" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.mass)
		&& "setupTime" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.setupTime)
		&& "setupTimePerBend" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.setupTimePerBend)
		&& "unitTime" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.unitTime)
		&& "unitTimePerBend" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.unitTimePerBend);
}
export function isBendTimeParametersUniqueMembers(_arg: unknown): _arg is BendTimeParametersUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetBendingMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetBendingMaterialId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "bendLineNetLength" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.bendLineNetLength);
}
export function isBendTimeParameters(_arg: unknown): _arg is BendTimeParameters {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetBendingMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetBendingMaterialId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "bendLineNetLength" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.bendLineNetLength)
		&& "setupTimeFactor" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.setupTimeFactor)
		&& "setupTimeDelta" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.setupTimeDelta)
		&& "setupTimePerBendFactor" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.setupTimePerBendFactor)
		&& "setupTimePerBendDelta" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.setupTimePerBendDelta)
		&& "unitTimeFactor" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.unitTimeFactor)
		&& "unitTimeDelta" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.unitTimeDelta)
		&& "unitTimePerBendFactor" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.unitTimePerBendFactor)
		&& "unitTimePerBendDelta" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.unitTimePerBendDelta);
}
export function isBendingToolEditorInputEntry(_arg: unknown): _arg is BendingToolEditorInputEntry {
	return typeof _arg === "object" && _arg !== null && "bendDescriptor" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.bendDescriptor)
		&& "angle" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.angle)
		&& "constructedInnerRadius" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.constructedInnerRadius)
		&& "bendDieChoices" in _arg && ((a: unknown): a is (BendDieChoice)[] => Array.isArray(a) && a.find((e: unknown) : e is BendDieChoice => !isBendDieChoice(e)) === undefined)(_arg.bendDieChoices);
}
export function isBox2(_arg: unknown): _arg is Box2 {
	return typeof _arg === "object" && _arg !== null && "lower" in _arg && isPoint2(_arg.lower)
		&& "upper" in _arg && isPoint2(_arg.upper);
}
export function isBox3(_arg: unknown): _arg is Box3 {
	return typeof _arg === "object" && _arg !== null && "lower" in _arg && isPoint3(_arg.lower)
		&& "upper" in _arg && isPoint3(_arg.upper);
}
export function isBulkEditorCellConfig(_arg: unknown): _arg is BulkEditorCellConfig {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && "content" in _arg && isFormWidgetType(_arg.type) && (() : boolean => {
	switch (_arg.type) {
		case "checkBox" : return isBulkEditorCheckBoxConfig(_arg.content);
		case "spinBox" : return isBulkEditorSpinBoxConfig(_arg.content);
		case "dropDown" : return isBulkEditorDropDownConfig(_arg.content);
		case "lineEdit" : return isBulkEditorLineEditConfig(_arg.content);
		case "textEdit" : return isBulkEditorTextEditConfig(_arg.content);
		case "label" : return isBulkEditorLabelConfig(_arg.content);
	}})()
;
}
export function isBulkEditorCheckBoxConfig(_arg: unknown): _arg is BulkEditorCheckBoxConfig {
	return typeof _arg === "object" && _arg !== null && ( !("initialValue" in _arg) || ((a: unknown): a is boolean => (a === undefined || ((a: unknown): a is boolean => typeof a === "boolean")(a)))(_arg.initialValue) )
		&& "isOptional" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.isOptional);
}
export function isBulkEditorColumnConfig(_arg: unknown): _arg is BulkEditorColumnConfig {
	return typeof _arg === "object" && _arg !== null && "key" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.key)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name);
}
export function isBulkEditorDropDownConfig(_arg: unknown): _arg is BulkEditorDropDownConfig {
	return typeof _arg === "object" && _arg !== null && ( !("initialValue" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.initialValue) )
		&& "items" in _arg && ((a: unknown): a is (BulkEditorDropDownItem)[] => Array.isArray(a) && a.find((e: unknown) : e is BulkEditorDropDownItem => !isBulkEditorDropDownItem(e)) === undefined)(_arg.items)
		&& "isOptional" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.isOptional);
}
export function isBulkEditorDropDownItem(_arg: unknown): _arg is BulkEditorDropDownItem {
	return typeof _arg === "object" && _arg !== null && "id" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.id)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name);
}
export function isBulkEditorLabelConfig(_arg: unknown): _arg is BulkEditorLabelConfig {
	return typeof _arg === "object" && _arg !== null && ( !("initialValue" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.initialValue) );
}
export function isBulkEditorLineEditConfig(_arg: unknown): _arg is BulkEditorLineEditConfig {
	return typeof _arg === "object" && _arg !== null && ( !("initialValue" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.initialValue) )
		&& "isOptional" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.isOptional);
}
export function isBulkEditorSpinBoxConfig(_arg: unknown): _arg is BulkEditorSpinBoxConfig {
	return typeof _arg === "object" && _arg !== null && ( !("initialValue" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.initialValue) )
		&& "min" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.min)
		&& "max" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.max)
		&& "decimals" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.decimals)
		&& "isOptional" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.isOptional);
}
export function isBulkEditorTextEditConfig(_arg: unknown): _arg is BulkEditorTextEditConfig {
	return typeof _arg === "object" && _arg !== null && ( !("initialValue" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.initialValue) )
		&& "isOptional" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.isOptional);
}
export function isCadCountersinking(_arg: unknown): _arg is CadCountersinking {
	return typeof _arg === "object" && _arg !== null && "featureDescriptor" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.featureDescriptor);
}
export function isCadFeature(_arg: unknown): _arg is CadFeature {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && "content" in _arg && isCadFeatureType(_arg.type) && (() : boolean => {
	switch (_arg.type) {
		case "countersinking" : return isCadCountersinking(_arg.content);
		case "throughHole" : return isCadThroughHole(_arg.content);
	}})()
;
}
export function isCadImportConfig(_arg: unknown): _arg is CadImportConfig {
	return typeof _arg === "object" && _arg !== null && ( !("sheetUpperSideStrategy" in _arg) || ((a: unknown): a is SheetUpperSideStrategy => (a === undefined || isSheetUpperSideStrategy(a)))(_arg.sheetUpperSideStrategy) );
}
export function isCadThroughHole(_arg: unknown): _arg is CadThroughHole {
	return typeof _arg === "object" && _arg !== null && "featureDescriptor" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.featureDescriptor);
}
export function isCamBendDeduction(_arg: unknown): _arg is CamBendDeduction {
	return typeof _arg === "object" && _arg !== null && "roundDeduction" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.roundDeduction)
		&& "innerRadius" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.innerRadius);
}
export function isCamCommand(_arg: unknown): _arg is CamCommand {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && "content" in _arg && isCamCommandType(_arg.type) && (() : boolean => {
	switch (_arg.type) {
		case "setColor" : return isCamCommandSetColor(_arg.content);
	}})()
;
}
export function isCamCommandSetColor(_arg: unknown): _arg is CamCommandSetColor {
	return typeof _arg === "object" && _arg !== null && "entities" in _arg && ((a: unknown): a is (GeometryEntity)[] => Array.isArray(a) && a.find((e: unknown) : e is GeometryEntity => !isGeometryEntity(e)) === undefined)(_arg.entities)
		&& "color" in _arg && isVector3(_arg.color);
}
export function isCamNestedPart(_arg: unknown): _arg is CamNestedPart {
	return typeof _arg === "object" && _arg !== null && "innerOuterPolygon" in _arg && ((a: unknown): a is InnerOuterPolygon => (typeof a === "object" && a !== null))(_arg.innerOuterPolygon)
		&& "coordinateSystem" in _arg && isCoordinateSystem2(_arg.coordinateSystem);
}
export function isCamNesting(_arg: unknown): _arg is CamNesting {
	return typeof _arg === "object" && _arg !== null && "sheets" in _arg && ((a: unknown): a is (CamSheet)[] => Array.isArray(a) && a.find((e: unknown) : e is CamSheet => !isCamSheet(e)) === undefined)(_arg.sheets);
}
export function isCamNestorConfig(_arg: unknown): _arg is CamNestorConfig {
	return typeof _arg === "object" && _arg !== null && "timeout" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.timeout)
		&& "numRelevantNestings" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.numRelevantNestings);
}
export function isCamNestorInput(_arg: unknown): _arg is CamNestorInput {
	return typeof _arg === "object" && _arg !== null && "parts" in _arg && ((a: unknown): a is (CamNestorInputPart)[] => Array.isArray(a) && a.find((e: unknown) : e is CamNestorInputPart => !isCamNestorInputPart(e)) === undefined)(_arg.parts)
		&& "targetBoundary" in _arg && ((a: unknown): a is Polygon => (typeof a === "object" && a !== null))(_arg.targetBoundary)
		&& "nestingDistance" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.nestingDistance)
		&& "xModulus" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.xModulus)
		&& "yModulus" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.yModulus);
}
export function isCamNestorInputPart(_arg: unknown): _arg is CamNestorInputPart {
	return typeof _arg === "object" && _arg !== null && "iop" in _arg && ((a: unknown): a is InnerOuterPolygon => (typeof a === "object" && a !== null))(_arg.iop)
		&& "minCount" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.minCount)
		&& "maxCount" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.maxCount)
		&& "fixedRotations" in _arg && ((a: unknown): a is (number)[] => Array.isArray(a) && a.find((e: unknown) : e is number => !((a: unknown): a is number => typeof a === "number")(e)) === undefined)(_arg.fixedRotations);
}
export function isCamSheet(_arg: unknown): _arg is CamSheet {
	return typeof _arg === "object" && _arg !== null && "dimX" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.dimX)
		&& "dimY" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.dimY)
		&& "multiplicity" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.multiplicity);
}
export function isCamTubeNestingResult(_arg: unknown): _arg is CamTubeNestingResult {
	return typeof _arg === "object" && _arg !== null && "inputLength" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.inputLength)
		&& "nestings" in _arg && ((a: unknown): a is (CamTubeNestingResultNesting)[] => Array.isArray(a) && a.find((e: unknown) : e is CamTubeNestingResultNesting => !isCamTubeNestingResultNesting(e)) === undefined)(_arg.nestings);
}
export function isCamTubeNestingResultNesting(_arg: unknown): _arg is CamTubeNestingResultNesting {
	return typeof _arg === "object" && _arg !== null && "transformations" in _arg && ((a: unknown): a is (CoordinateSystem3)[] => Array.isArray(a) && a.find((e: unknown) : e is CoordinateSystem3 => !isCoordinateSystem3(e)) === undefined)(_arg.transformations)
		&& "multiplicity" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.multiplicity);
}
export function isCamWorkStepUpdateInputSheet(_arg: unknown): _arg is CamWorkStepUpdateInputSheet {
	return typeof _arg === "object" && _arg !== null && "nestorInput" in _arg && isCamNestorInput(_arg.nestorInput)
		&& "nestorConfig" in _arg && isCamNestorConfig(_arg.nestorConfig);
}
export function isCamWorkStepUpdateInputTube(_arg: unknown): _arg is CamWorkStepUpdateInputTube {
	return typeof _arg === "object" && _arg !== null && "length" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.length)
		&& "multiplicity" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.multiplicity)
		&& "nestingDistance" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.nestingDistance);
}
export function isCamera3(_arg: unknown): _arg is Camera3 {
	return typeof _arg === "object" && _arg !== null && "eye" in _arg && isPoint3(_arg.eye)
		&& "center" in _arg && isPoint3(_arg.center)
		&& "up" in _arg && isVector3(_arg.up);
}
export function isCameraOrientation3(_arg: unknown): _arg is CameraOrientation3 {
	return typeof _arg === "object" && _arg !== null && "center" in _arg && isVector3(_arg.center)
		&& "direction" in _arg && isVector3(_arg.direction)
		&& "up" in _arg && isVector3(_arg.up);
}
export function isConnectionProperties(_arg: unknown): _arg is ConnectionProperties {
	return typeof _arg === "object" && _arg !== null && "databaseType" in _arg && isDatabaseType(_arg.databaseType)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "hostName" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.hostName)
		&& "port" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.port)
		&& "databaseName" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.databaseName)
		&& "userName" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.userName)
		&& "password" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.password);
}
export function isConsumableUniqueMembers(_arg: unknown): _arg is ConsumableUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier);
}
export function isConsumable(_arg: unknown): _arg is Consumable {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "unit" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.unit)
		&& "costsPerUnit" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.costsPerUnit)
		&& "description" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.description);
}
export function isCoordinateSystem2(_arg: unknown): _arg is CoordinateSystem2 {
	return typeof _arg === "object" && _arg !== null && "origin" in _arg && isVector2(_arg.origin)
		&& "unitaryMatrix" in _arg && isMatrix2(_arg.unitaryMatrix);
}
export function isCoordinateSystem3(_arg: unknown): _arg is CoordinateSystem3 {
	return typeof _arg === "object" && _arg !== null && "origin" in _arg && isVector3(_arg.origin)
		&& "unitaryMatrix" in _arg && isMatrix3(_arg.unitaryMatrix);
}
export function isDieChoiceAlternativesEntry(_arg: unknown): _arg is DieChoiceAlternativesEntry {
	return typeof _arg === "object" && _arg !== null && "bendDescriptor" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.bendDescriptor)
		&& "bendDieChoices" in _arg && ((a: unknown): a is (BendDieChoice)[] => Array.isArray(a) && a.find((e: unknown) : e is BendDieChoice => !isBendDieChoice(e)) === undefined)(_arg.bendDieChoices);
}
export function isDieChoiceMapEntry(_arg: unknown): _arg is DieChoiceMapEntry {
	return typeof _arg === "object" && _arg !== null && "bendDescriptor" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.bendDescriptor)
		&& "bendDieChoice" in _arg && isBendDieChoice(_arg.bendDieChoice);
}
export function isDieGroupPriorityUniqueMembers(_arg: unknown): _arg is DieGroupPriorityUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "upperDieGroupId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.upperDieGroupId)
		&& "lowerDieGroupId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.lowerDieGroupId)
		&& "sheetBendingMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetBendingMaterialId)
		&& "sheetThickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.sheetThickness);
}
export function isDieGroupPriority(_arg: unknown): _arg is DieGroupPriority {
	return (typeof _arg === "object" && _arg !== null)
		&& "upperDieGroupId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.upperDieGroupId)
		&& "lowerDieGroupId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.lowerDieGroupId)
		&& "sheetBendingMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetBendingMaterialId)
		&& "sheetThickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.sheetThickness)
		&& "priority" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.priority);
}
export function isDieSelectorQuery(_arg: unknown): _arg is DieSelectorQuery {
	return typeof _arg === "object" && _arg !== null && "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "bendAngle" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.bendAngle)
		&& "maxOpeningWidth" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.maxOpeningWidth);
}
export function isDimensionConstraintsUniqueMembers(_arg: unknown): _arg is DimensionConstraintsUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId);
}
export function isDimensionConstraints(_arg: unknown): _arg is DimensionConstraints {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "minX" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.minX)
		&& "minY" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.minY)
		&& "minZ" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.minZ)
		&& "maxX" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.maxX)
		&& "maxY" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.maxY)
		&& "maxZ" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.maxZ);
}
export function isDocXImage(_arg: unknown): _arg is DocXImage {
	return typeof _arg === "object" && _arg !== null && "placeholder" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.placeholder)
		&& "content" in _arg && ((a: unknown): a is ArrayBuffer => a instanceof ArrayBuffer)(_arg.content)
		&& "type" in _arg && isDocXImageType(_arg.type);
}
export function isDocXTableCell(_arg: unknown): _arg is DocXTableCell {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && "content" in _arg && isDocXTableCellType(_arg.type) && (() : boolean => {
	switch (_arg.type) {
		case "text" : return isDocXText(_arg.content);
		case "image" : return isDocXImage(_arg.content);
		case "tables" : return isDocXTables(_arg.content);
	}})()
;
}
export function isDocXTables(_arg: unknown): _arg is DocXTables {
	return typeof _arg === "object" && _arg !== null && "tables" in _arg && ((a: unknown): a is (((DocXTableCell)[])[])[] => Array.isArray(a) && a.find((e: unknown) : e is ((DocXTableCell)[])[] => !((a: unknown): a is ((DocXTableCell)[])[] => Array.isArray(a) && a.find((e: unknown) : e is (DocXTableCell)[] => !((a: unknown): a is (DocXTableCell)[] => Array.isArray(a) && a.find((e: unknown) : e is DocXTableCell => !isDocXTableCell(e)) === undefined)(e)) === undefined)(e)) === undefined)(_arg.tables);
}
export function isDocXText(_arg: unknown): _arg is DocXText {
	return typeof _arg === "object" && _arg !== null && "placeholder" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.placeholder)
		&& "text" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.text);
}
export function isDocumentBarcode(_arg: unknown): _arg is DocumentBarcode {
	return typeof _arg === "object" && _arg !== null && "width" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.width)
		&& "text" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.text)
		&& "alignment" in _arg && isDocumentAlignment(_arg.alignment);
}
export function isDocumentFormat(_arg: unknown): _arg is DocumentFormat {
	return typeof _arg === "object" && _arg !== null && "orientation" in _arg && isDocumentOrientation(_arg.orientation);
}
export function isDocumentHeading(_arg: unknown): _arg is DocumentHeading {
	return typeof _arg === "object" && _arg !== null && "level" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.level)
		&& "text" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.text);
}
export function isDocumentImage(_arg: unknown): _arg is DocumentImage {
	return typeof _arg === "object" && _arg !== null && "width" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.width)
		&& "type" in _arg && isDocumentImageType(_arg.type)
		&& "uuid" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.uuid)
		&& "data" in _arg && ((a: unknown): a is ArrayBuffer => a instanceof ArrayBuffer)(_arg.data)
		&& "alignment" in _arg && isDocumentAlignment(_arg.alignment);
}
export function isDocumentItem(_arg: unknown): _arg is DocumentItem {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && "content" in _arg && isDocumentItemType(_arg.type) && (() : boolean => {
	switch (_arg.type) {
		case "paragraph" : return isDocumentParagraph(_arg.content);
		case "heading" : return isDocumentHeading(_arg.content);
		case "table" : return isDocumentTable(_arg.content);
		case "image" : return isDocumentImage(_arg.content);
		case "barcode" : return isDocumentBarcode(_arg.content);
		case "separator" : return isDocumentSeparator(_arg.content);
		case "pageBreak" : return isDocumentPageBreak(_arg.content);
	}})()
;
}
export function isDocumentPageBreak(_arg: unknown): _arg is DocumentPageBreak {
	return true;
}
export function isDocumentParagraph(_arg: unknown): _arg is DocumentParagraph {
	return typeof _arg === "object" && _arg !== null && "width" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.width)
		&& "text" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.text)
		&& "alignment" in _arg && isDocumentAlignment(_arg.alignment);
}
export function isDocumentSeparator(_arg: unknown): _arg is DocumentSeparator {
	return true;
}
export function isDocumentTable(_arg: unknown): _arg is DocumentTable {
	return typeof _arg === "object" && _arg !== null && "width" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.width)
		&& "columnWidths" in _arg && ((a: unknown): a is (number)[] => Array.isArray(a) && a.find((e: unknown) : e is number => !((a: unknown): a is number => typeof a === "number")(e)) === undefined)(_arg.columnWidths)
		&& "columnHeaders" in _arg && isDocumentTableRow(_arg.columnHeaders)
		&& "rows" in _arg && ((a: unknown): a is (DocumentTableRow)[] => Array.isArray(a) && a.find((e: unknown) : e is DocumentTableRow => !isDocumentTableRow(e)) === undefined)(_arg.rows);
}
export function isDocumentTableCell(_arg: unknown): _arg is DocumentTableCell {
	return typeof _arg === "object" && _arg !== null && "text" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.text)
		&& "alignment" in _arg && isDocumentAlignment(_arg.alignment);
}
export function isDocumentTableRow(_arg: unknown): _arg is DocumentTableRow {
	return true;
}
export function isFormRowConfig(_arg: unknown): _arg is FormRowConfig {
	return typeof _arg === "object" && _arg !== null && "key" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.key)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "config" in _arg && isFormWidgetConfig(_arg.config);
}
export function isFormWidgetCheckBoxConfig(_arg: unknown): _arg is FormWidgetCheckBoxConfig {
	return typeof _arg === "object" && _arg !== null && "initialValue" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.initialValue);
}
export function isFormWidgetConfig(_arg: unknown): _arg is FormWidgetConfig {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && "content" in _arg && isFormWidgetType(_arg.type) && (() : boolean => {
	switch (_arg.type) {
		case "checkBox" : return isFormWidgetCheckBoxConfig(_arg.content);
		case "spinBox" : return isFormWidgetSpinBoxConfig(_arg.content);
		case "dropDown" : return isFormWidgetDropDownConfig(_arg.content);
		case "lineEdit" : return isFormWidgetLineEditConfig(_arg.content);
		case "textEdit" : return isFormWidgetTextEditConfig(_arg.content);
		case "label" : return isFormWidgetLabelConfig(_arg.content);
	}})()
;
}
export function isFormWidgetDropDownConfig(_arg: unknown): _arg is FormWidgetDropDownConfig {
	return typeof _arg === "object" && _arg !== null && "initialValue" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.initialValue)
		&& "entries" in _arg && ((a: unknown): a is (FormWidgetDropDownEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is FormWidgetDropDownEntry => !isFormWidgetDropDownEntry(e)) === undefined)(_arg.entries);
}
export function isFormWidgetDropDownEntry(_arg: unknown): _arg is FormWidgetDropDownEntry {
	return typeof _arg === "object" && _arg !== null && "id" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.id)
		&& "text" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.text);
}
export function isFormWidgetLabelConfig(_arg: unknown): _arg is FormWidgetLabelConfig {
	return typeof _arg === "object" && _arg !== null && "initialValue" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.initialValue);
}
export function isFormWidgetLineEditConfig(_arg: unknown): _arg is FormWidgetLineEditConfig {
	return typeof _arg === "object" && _arg !== null && "initialValue" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.initialValue);
}
export function isFormWidgetSpinBoxConfig(_arg: unknown): _arg is FormWidgetSpinBoxConfig {
	return typeof _arg === "object" && _arg !== null && "initialValue" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.initialValue)
		&& "min" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.min)
		&& "max" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.max)
		&& "decimals" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.decimals);
}
export function isFormWidgetTextEditConfig(_arg: unknown): _arg is FormWidgetTextEditConfig {
	return typeof _arg === "object" && _arg !== null && "initialValue" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.initialValue);
}
export function isGeometryEntity(_arg: unknown): _arg is GeometryEntity {
	return typeof _arg === "object" && _arg !== null && "assemblyPath" in _arg && isAssemblyPath(_arg.assemblyPath)
		&& "descriptor" in _arg && isGeometryEntityDescriptor(_arg.descriptor);
}
export function isGeometryEntityDescriptor(_arg: unknown): _arg is GeometryEntityDescriptor {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && "content" in _arg && isGeometryEntityType(_arg.type) && (() : boolean => {
	switch (_arg.type) {
		case "edge" : return isGeometryEntityDescriptorContentEdge(_arg.content);
		case "face" : return isGeometryEntityDescriptorContentFace(_arg.content);
	}})()
;
}
export function isGeometryEntityDescriptorContentEdge(_arg: unknown): _arg is GeometryEntityDescriptorContentEdge {
	return typeof _arg === "object" && _arg !== null && "value" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.value);
}
export function isGeometryEntityDescriptorContentFace(_arg: unknown): _arg is GeometryEntityDescriptorContentFace {
	return typeof _arg === "object" && _arg !== null && "value" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.value);
}
export function isGeometrySelectionEntry(_arg: unknown): _arg is GeometrySelectionEntry {
	return typeof _arg === "object" && _arg !== null && "entities" in _arg && ((a: unknown): a is (GeometryEntity)[] => Array.isArray(a) && a.find((e: unknown) : e is GeometryEntity => !isGeometryEntity(e)) === undefined)(_arg.entities)
		&& "data" in _arg && isStringIndexedInterface(_arg.data);
}
export function isGltfNodeVendorData(_arg: unknown): _arg is GltfNodeVendorData {
	return typeof _arg === "object" && _arg !== null && "assembly" in _arg && ((a: unknown): a is Assembly => (typeof a === "object" && a !== null))(_arg.assembly)
		&& "data" in _arg && isStringIndexedInterface(_arg.data);
}
export function isGraphCreatorInput(_arg: unknown): _arg is GraphCreatorInput {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && "content" in _arg && isGraphCreatorInputType(_arg.type) && (() : boolean => {
	switch (_arg.type) {
		case "step" : return isGraphCreatorInputStep(_arg.content);
		case "twoDimRep" : return isGraphCreatorInputTwoDimRep(_arg.content);
		case "extrusion" : return isGraphCreatorInputExtrusion(_arg.content);
	}})()
;
}
export function isGraphCreatorInputExtrusion(_arg: unknown): _arg is GraphCreatorInputExtrusion {
	return typeof _arg === "object" && _arg !== null && "importId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.importId)
		&& "innerOuterPolygon" in _arg && ((a: unknown): a is InnerOuterPolygon => (typeof a === "object" && a !== null))(_arg.innerOuterPolygon)
		&& "depth" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.depth)
		&& "assemblyName" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.assemblyName)
		&& "multiplicity" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.multiplicity);
}
export function isGraphCreatorInputStep(_arg: unknown): _arg is GraphCreatorInputStep {
	return typeof _arg === "object" && _arg !== null && "importId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.importId)
		&& "data" in _arg && ((a: unknown): a is ArrayBuffer => a instanceof ArrayBuffer)(_arg.data)
		&& "multiplicity" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.multiplicity);
}
export function isGraphCreatorInputTwoDimRep(_arg: unknown): _arg is GraphCreatorInputTwoDimRep {
	return typeof _arg === "object" && _arg !== null && "importId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.importId)
		&& "twoDimRep" in _arg && ((a: unknown): a is TwoDimRepresentation => (typeof a === "object" && a !== null))(_arg.twoDimRep)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "assemblyName" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.assemblyName)
		&& "multiplicity" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.multiplicity);
}
export function isGraphDeserializationResult(_arg: unknown): _arg is GraphDeserializationResult {
	return typeof _arg === "object" && _arg !== null && "status" in _arg && isAddResultStatus(_arg.status)
		&& ( !("graph" in _arg) || ((a: unknown): a is ImportedDocumentGraph => (a === undefined || ((a: unknown): a is ImportedDocumentGraph => (typeof a === "object" && a !== null))(a)))(_arg.graph) );
}
export function isHandlerPackaging(_arg: unknown): _arg is HandlerPackaging {
	return typeof _arg === "object" && _arg !== null && "package" in _arg && isBox3(_arg.package)
		&& "maxWeight" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.maxWeight)
		&& "masses" in _arg && ((a: unknown): a is (number)[] => Array.isArray(a) && a.find((e: unknown) : e is number => !((a: unknown): a is number => typeof a === "number")(e)) === undefined)(_arg.masses);
}
export function isHandlerPostProcessCreateSources(_arg: unknown): _arg is HandlerPostProcessCreateSources {
	return typeof _arg === "object" && _arg !== null && "attributes" in _arg && ((a: unknown): a is (VertexWithArticleAttributes)[] => Array.isArray(a) && a.find((e: unknown) : e is VertexWithArticleAttributes => !isVertexWithArticleAttributes(e)) === undefined)(_arg.attributes);
}
export function isHandlerPostProcessSheetBending(_arg: unknown): _arg is HandlerPostProcessSheetBending {
	return typeof _arg === "object" && _arg !== null && "upperDieAffectDistances" in _arg && ((a: unknown): a is (number)[] => Array.isArray(a) && a.find((e: unknown) : e is number => !((a: unknown): a is number => typeof a === "number")(e)) === undefined)(_arg.upperDieAffectDistances)
		&& "lowerDieAffectDistances" in _arg && ((a: unknown): a is (number)[] => Array.isArray(a) && a.find((e: unknown) : e is number => !((a: unknown): a is number => typeof a === "number")(e)) === undefined)(_arg.lowerDieAffectDistances);
}
export function isHandlerPreProcessCreateWorkStep(_arg: unknown): _arg is HandlerPreProcessCreateWorkStep {
	return typeof _arg === "object" && _arg !== null && "processTable" in _arg && ((a: unknown): a is (Process)[] => Array.isArray(a) && a.find((e: unknown) : e is Process => !isProcess(e)) === undefined)(_arg.processTable);
}
export function isHttpReply(_arg: unknown): _arg is HttpReply {
	return typeof _arg === "object" && _arg !== null && "errorCode" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.errorCode)
		&& "data" in _arg && ((a: unknown): a is ArrayBuffer => a instanceof ArrayBuffer)(_arg.data);
}
export function isInvalidValueTableError(_arg: unknown): _arg is InvalidValueTableError {
	return typeof _arg === "object" && _arg !== null && "affectedRowType" in _arg && isTableType(_arg.affectedRowType)
		&& "affectedRowIndex" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.affectedRowIndex)
		&& "affectedColumnIndex" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.affectedColumnIndex);
}
export function isJoining(_arg: unknown): _arg is Joining {
	return typeof _arg === "object" && _arg !== null && "joiningSteps" in _arg && ((a: unknown): a is (JoiningStep)[] => Array.isArray(a) && a.find((e: unknown) : e is JoiningStep => !isJoiningStep(e)) === undefined)(_arg.joiningSteps);
}
export function isJoiningReplyStateContentUndefinedError(_arg: unknown): _arg is JoiningReplyStateContentUndefinedError {
	return true;
}
export function isJoiningStep(_arg: unknown): _arg is JoiningStep {
	return typeof _arg === "object" && _arg !== null && "entries" in _arg && ((a: unknown): a is (JoiningStepEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is JoiningStepEntry => !isJoiningStepEntry(e)) === undefined)(_arg.entries)
		&& ( !("cameraOrientation" in _arg) || ((a: unknown): a is CameraOrientation3 => (a === undefined || isCameraOrientation3(a)))(_arg.cameraOrientation) )
		&& "comment" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.comment);
}
export function isJoiningStepEntry(_arg: unknown): _arg is JoiningStepEntry {
	return typeof _arg === "object" && _arg !== null && "assembly" in _arg && ((a: unknown): a is Assembly => (typeof a === "object" && a !== null))(_arg.assembly);
}
export function isKeyValue(_arg: unknown): _arg is KeyValue {
	return typeof _arg === "object" && _arg !== null && "key" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.key)
		&& "value" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.value);
}
export function isLaserSheetCuttingGasUniqueMembers(_arg: unknown): _arg is LaserSheetCuttingGasUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier);
}
export function isLaserSheetCuttingGas(_arg: unknown): _arg is LaserSheetCuttingGas {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name);
}
export function isLaserSheetCuttingMaxThicknessUniqueMembers(_arg: unknown): _arg is LaserSheetCuttingMaxThicknessUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetCuttingMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetCuttingMaterialId)
		&& "laserSheetCuttingGasId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.laserSheetCuttingGasId);
}
export function isLaserSheetCuttingMaxThickness(_arg: unknown): _arg is LaserSheetCuttingMaxThickness {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetCuttingMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetCuttingMaterialId)
		&& "laserSheetCuttingGasId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.laserSheetCuttingGasId)
		&& "maxThickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.maxThickness)
		&& "minThickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.minThickness);
}
export function isLaserSheetCuttingMinAreaUniqueMembers(_arg: unknown): _arg is LaserSheetCuttingMinAreaUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetCuttingMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetCuttingMaterialId)
		&& "laserSheetCuttingGasId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.laserSheetCuttingGasId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness);
}
export function isLaserSheetCuttingMinArea(_arg: unknown): _arg is LaserSheetCuttingMinArea {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetCuttingMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetCuttingMaterialId)
		&& "laserSheetCuttingGasId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.laserSheetCuttingGasId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "area" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.area);
}
export function isLaserSheetCuttingPierceTimeUniqueMembers(_arg: unknown): _arg is LaserSheetCuttingPierceTimeUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetCuttingMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetCuttingMaterialId)
		&& "laserSheetCuttingGasId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.laserSheetCuttingGasId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness);
}
export function isLaserSheetCuttingPierceTime(_arg: unknown): _arg is LaserSheetCuttingPierceTime {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetCuttingMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetCuttingMaterialId)
		&& "laserSheetCuttingGasId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.laserSheetCuttingGasId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "time" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.time);
}
export function isLaserSheetCuttingRateUniqueMembers(_arg: unknown): _arg is LaserSheetCuttingRateUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetCuttingMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetCuttingMaterialId)
		&& "laserSheetCuttingGasId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.laserSheetCuttingGasId);
}
export function isLaserSheetCuttingRate(_arg: unknown): _arg is LaserSheetCuttingRate {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetCuttingMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetCuttingMaterialId)
		&& "laserSheetCuttingGasId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.laserSheetCuttingGasId)
		&& "rate" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.rate);
}
export function isLaserSheetCuttingSpeedUniqueMembers(_arg: unknown): _arg is LaserSheetCuttingSpeedUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetCuttingMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetCuttingMaterialId)
		&& "laserSheetCuttingGasId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.laserSheetCuttingGasId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness);
}
export function isLaserSheetCuttingSpeed(_arg: unknown): _arg is LaserSheetCuttingSpeed {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetCuttingMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetCuttingMaterialId)
		&& "laserSheetCuttingGasId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.laserSheetCuttingGasId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "speed" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.speed);
}
export function isLayer(_arg: unknown): _arg is Layer {
	return typeof _arg === "object" && _arg !== null && "descriptor" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.descriptor)
		&& "number" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.number)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name);
}
export function isLayeredExtraData(_arg: unknown): _arg is LayeredExtraData {
	return typeof _arg === "object" && _arg !== null && "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "material" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.material);
}
export function isLineSegment(_arg: unknown): _arg is LineSegment {
	return typeof _arg === "object" && _arg !== null && "from" in _arg && isPoint2(_arg.from)
		&& "to" in _arg && isPoint2(_arg.to);
}
export function isLowerDieUniqueMembers(_arg: unknown): _arg is LowerDieUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier);
}
export function isLowerDie(_arg: unknown): _arg is LowerDie {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "lowerDieGroupId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.lowerDieGroupId)
		&& "description" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.description);
}
export function isLowerDieGroupUniqueMembers(_arg: unknown): _arg is LowerDieGroupUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier);
}
export function isLowerDieGroup(_arg: unknown): _arg is LowerDieGroup {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "exportIdentifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.exportIdentifier)
		&& "openingWidth" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.openingWidth);
}
export function isLowerDieUnitUniqueMembers(_arg: unknown): _arg is LowerDieUnitUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "lowerDieId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.lowerDieId)
		&& "dimX" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.dimX);
}
export function isLowerDieUnit(_arg: unknown): _arg is LowerDieUnit {
	return (typeof _arg === "object" && _arg !== null)
		&& "lowerDieId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.lowerDieId)
		&& "dimX" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.dimX)
		&& "multiplicity" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.multiplicity);
}
export function isLstCreationParameters(_arg: unknown): _arg is LstCreationParameters {
	return typeof _arg === "object" && _arg !== null && "programName" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.programName)
		&& "lttIdentifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.lttIdentifier)
		&& "sheetThickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.sheetThickness)
		&& "sheetMaterial" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetMaterial)
		&& "measureSheet" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.measureSheet)
		&& "loadingSystem" in _arg && isTrumpfLoadingSystem(_arg.loadingSystem)
		&& "evaporate" in _arg && isLstEvaporateMode(_arg.evaporate)
		&& "measuringCorner" in _arg && isSheetCorner(_arg.measuringCorner)
		&& "sheetMetalStop" in _arg && isSheetCorner(_arg.sheetMetalStop);
}
export function isMatrix2(_arg: unknown): _arg is Matrix2 {
	return typeof _arg === "object" && _arg !== null && "entries" in _arg && ((a: unknown): a is [ (number), (number), (number), (number), ] => {
	const m = [ 
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),];
	return Array.isArray(a) && a.length === m.length && m.every((t, index) => t(a[index]));
})(_arg.entries);
}
export function isMatrix3(_arg: unknown): _arg is Matrix3 {
	return typeof _arg === "object" && _arg !== null && "entries" in _arg && ((a: unknown): a is [ (number), (number), (number), (number), (number), (number), (number), (number), (number), ] => {
	const m = [ 
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),];
	return Array.isArray(a) && a.length === m.length && m.every((t, index) => t(a[index]));
})(_arg.entries);
}
export function isMatrix4(_arg: unknown): _arg is Matrix4 {
	return typeof _arg === "object" && _arg !== null && "entries" in _arg && ((a: unknown): a is [ (number), (number), (number), (number), (number), (number), (number), (number), (number), (number), (number), (number), (number), (number), (number), (number), ] => {
	const m = [ 
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),];
	return Array.isArray(a) && a.length === m.length && m.every((t, index) => t(a[index]));
})(_arg.entries);
}
export function isMeasurementScene(_arg: unknown): _arg is MeasurementScene {
	return typeof _arg === "object" && _arg !== null && "scene" in _arg && ((a: unknown): a is Scene => (typeof a === "object" && a !== null))(_arg.scene)
		&& "camera" in _arg && isCamera3(_arg.camera);
}
export function isNest2PartInstance(_arg: unknown): _arg is Nest2PartInstance {
	return typeof _arg === "object" && _arg !== null && "descriptor" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.descriptor)
		&& "transformation" in _arg && isCoordinateSystem2(_arg.transformation);
}
export function isNest3InputBin(_arg: unknown): _arg is Nest3InputBin {
	return typeof _arg === "object" && _arg !== null && "box" in _arg && isBox3(_arg.box)
		&& "maxWeight" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.maxWeight);
}
export function isNest3Part(_arg: unknown): _arg is Nest3Part {
	return typeof _arg === "object" && _arg !== null && "assembly" in _arg && ((a: unknown): a is Assembly => (typeof a === "object" && a !== null))(_arg.assembly)
		&& "multiplicity" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.multiplicity)
		&& "mass" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.mass)
		&& "profileShadow" in _arg && ((a: unknown): a is ProfileShadowFuture => (typeof a === "object" && a !== null))(_arg.profileShadow);
}
export function isNest3ResultBox(_arg: unknown): _arg is Nest3ResultBox {
	return typeof _arg === "object" && _arg !== null && "assembly" in _arg && ((a: unknown): a is Assembly => (typeof a === "object" && a !== null))(_arg.assembly)
		&& "weight" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.weight);
}
export function isNestingDissection(_arg: unknown): _arg is NestingDissection {
	return typeof _arg === "object" && _arg !== null && "nestingDescriptor" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.nestingDescriptor)
		&& ( !("xDissection" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.xDissection) )
		&& ( !("yDissection" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.yDissection) );
}
export function isNewNodeParams(_arg: unknown): _arg is NewNodeParams {
	return typeof _arg === "object" && _arg !== null && "processType" in _arg && isProcessType(_arg.processType)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "nodeUserData" in _arg && isStringIndexedInterface(_arg.nodeUserData);
}
export function isNodeEditingStateEntry(_arg: unknown): _arg is NodeEditingStateEntry {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && "content" in _arg && isNodeEditingStateEntryType(_arg.type) && (() : boolean => {
	switch (_arg.type) {
		case "missingDatum" : return isNodeEditingStateEntryMissingDatum(_arg.content);
		case "invalidDatum" : return isNodeEditingStateEntryInvalidDatum(_arg.content);
	}})()
;
}
export function isNodeEditingStateEntryInvalidDatum(_arg: unknown): _arg is NodeEditingStateEntryInvalidDatum {
	return typeof _arg === "object" && _arg !== null && "nodeDatumType" in _arg && isNodeDatumType(_arg.nodeDatumType)
		&& "value" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.value);
}
export function isNodeEditingStateEntryMissingDatum(_arg: unknown): _arg is NodeEditingStateEntryMissingDatum {
	return typeof _arg === "object" && _arg !== null && "nodeDatumType" in _arg && isNodeDatumType(_arg.nodeDatumType);
}
export function isNodeUpdate(_arg: unknown): _arg is NodeUpdate {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && "content" in _arg && isWorkStepType(_arg.type) && (() : boolean => {
	switch (_arg.type) {
		case "undefined" : return isNodeUpdateUndefined(_arg.content);
		case "sheet" : return isNodeUpdateSheet(_arg.content);
		case "sheetCutting" : return isNodeUpdateSheetCutting(_arg.content);
		case "joining" : return isNodeUpdateJoining(_arg.content);
		case "tubeCutting" : return isNodeUpdateTubeCutting(_arg.content);
		case "sheetBending" : return isNodeUpdateSheetBending(_arg.content);
		case "userDefined" : return isNodeUpdateUserDefined(_arg.content);
		case "userDefinedBase" : return isNodeUpdateUserDefinedBase(_arg.content);
		case "packaging" : return isNodeUpdatePackaging(_arg.content);
		case "transform" : return isNodeUpdateTransform(_arg.content);
		case "tube" : return isNodeUpdateTube(_arg.content);
	}})()
;
}
export function isNodeUpdateJoining(_arg: unknown): _arg is NodeUpdateJoining {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is Vertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("processType" in _arg) || ((a: unknown): a is ProcessType => (a === undefined || isProcessType(a)))(_arg.processType) )
		&& ( !("processId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.processId) )
		&& ( !("nodeUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.nodeUserData) );
}
export function isNodeUpdatePackaging(_arg: unknown): _arg is NodeUpdatePackaging {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is Vertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("processType" in _arg) || ((a: unknown): a is ProcessType => (a === undefined || isProcessType(a)))(_arg.processType) )
		&& ( !("processId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.processId) )
		&& ( !("nodeUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.nodeUserData) );
}
export function isNodeUpdateSheet(_arg: unknown): _arg is NodeUpdateSheet {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is Vertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("processType" in _arg) || ((a: unknown): a is ProcessType => (a === undefined || isProcessType(a)))(_arg.processType) )
		&& ( !("processId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.processId) )
		&& ( !("nodeUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.nodeUserData) );
}
export function isNodeUpdateSheetBending(_arg: unknown): _arg is NodeUpdateSheetBending {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is Vertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("processType" in _arg) || ((a: unknown): a is ProcessType => (a === undefined || isProcessType(a)))(_arg.processType) )
		&& ( !("processId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.processId) )
		&& ( !("nodeUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.nodeUserData) )
		&& ( !("dieChoiceMap" in _arg) || ((a: unknown): a is (DieChoiceMapEntry)[] => (a === undefined || ((a: unknown): a is (DieChoiceMapEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is DieChoiceMapEntry => !isDieChoiceMapEntry(e)) === undefined)(a)))(_arg.dieChoiceMap) )
		&& ( !("toggleUpperSide" in _arg) || ((a: unknown): a is boolean => (a === undefined || ((a: unknown): a is boolean => typeof a === "boolean")(a)))(_arg.toggleUpperSide) )
		&& ( !("correctBends" in _arg) || ((a: unknown): a is boolean => (a === undefined || ((a: unknown): a is boolean => typeof a === "boolean")(a)))(_arg.correctBends) );
}
export function isNodeUpdateSheetCutting(_arg: unknown): _arg is NodeUpdateSheetCutting {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is Vertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("processType" in _arg) || ((a: unknown): a is ProcessType => (a === undefined || isProcessType(a)))(_arg.processType) )
		&& ( !("processId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.processId) )
		&& ( !("nodeUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.nodeUserData) )
		&& ( !("sheetThickness" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.sheetThickness) )
		&& ( !("toggleUpperSide" in _arg) || ((a: unknown): a is boolean => (a === undefined || ((a: unknown): a is boolean => typeof a === "boolean")(a)))(_arg.toggleUpperSide) );
}
export function isNodeUpdateTransform(_arg: unknown): _arg is NodeUpdateTransform {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is Vertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("processType" in _arg) || ((a: unknown): a is ProcessType => (a === undefined || isProcessType(a)))(_arg.processType) )
		&& ( !("processId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.processId) )
		&& ( !("nodeUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.nodeUserData) );
}
export function isNodeUpdateTube(_arg: unknown): _arg is NodeUpdateTube {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is Vertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("processType" in _arg) || ((a: unknown): a is ProcessType => (a === undefined || isProcessType(a)))(_arg.processType) )
		&& ( !("processId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.processId) )
		&& ( !("nodeUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.nodeUserData) );
}
export function isNodeUpdateTubeCutting(_arg: unknown): _arg is NodeUpdateTubeCutting {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is Vertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("processType" in _arg) || ((a: unknown): a is ProcessType => (a === undefined || isProcessType(a)))(_arg.processType) )
		&& ( !("processId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.processId) )
		&& ( !("nodeUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.nodeUserData) );
}
export function isNodeUpdateUndefined(_arg: unknown): _arg is NodeUpdateUndefined {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is Vertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("processType" in _arg) || ((a: unknown): a is ProcessType => (a === undefined || isProcessType(a)))(_arg.processType) )
		&& ( !("processId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.processId) )
		&& ( !("nodeUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.nodeUserData) );
}
export function isNodeUpdateUserDefined(_arg: unknown): _arg is NodeUpdateUserDefined {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is Vertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("processType" in _arg) || ((a: unknown): a is ProcessType => (a === undefined || isProcessType(a)))(_arg.processType) )
		&& ( !("processId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.processId) )
		&& ( !("nodeUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.nodeUserData) );
}
export function isNodeUpdateUserDefinedBase(_arg: unknown): _arg is NodeUpdateUserDefinedBase {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is Vertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("processType" in _arg) || ((a: unknown): a is ProcessType => (a === undefined || isProcessType(a)))(_arg.processType) )
		&& ( !("processId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.processId) )
		&& ( !("nodeUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.nodeUserData) );
}
export function isNodeUserDataBase(_arg: unknown): _arg is NodeUserDataBase {
	return typeof _arg === "object" && _arg !== null && "attachments" in _arg && ((a: unknown): a is (Attachment)[] => Array.isArray(a) && a.find((e: unknown) : e is Attachment => !isAttachment(e)) === undefined)(_arg.attachments)
		&& "bendLineEngravingMode" in _arg && isBendLineEngravingMode(_arg.bendLineEngravingMode)
		&& "comment" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.comment)
		&& "deburrDoubleSided" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.deburrDoubleSided)
		&& "fixedRotations" in _arg && ((a: unknown): a is (number)[] => Array.isArray(a) && a.find((e: unknown) : e is number => !((a: unknown): a is number => typeof a === "number")(e)) === undefined)(_arg.fixedRotations)
		&& "numCountersinks" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.numCountersinks)
		&& "numThreads" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.numThreads)
		&& "purchasePartMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.purchasePartMaterialId)
		&& "sheetFilterSheetIds" in _arg && ((a: unknown): a is (string)[] => Array.isArray(a) && a.find((e: unknown) : e is string => !((a: unknown): a is string => typeof a === "string")(e)) === undefined)(_arg.sheetFilterSheetIds)
		&& "sheetMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetMaterialId)
		&& "sheetTappingData" in _arg && ((a: unknown): a is (SheetTappingDataEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetTappingDataEntry => !isSheetTappingDataEntry(e)) === undefined)(_arg.sheetTappingData)
		&& "testReportRequired" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.testReportRequired)
		&& "tubeMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeMaterialId)
		&& "tubeSpecificationId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeSpecificationId)
		&& "userDefinedMaterialCostsPerPiece" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.userDefinedMaterialCostsPerPiece)
		&& "userDefinedScalePrices" in _arg && ((a: unknown): a is (UserDefinedScalePrice)[] => Array.isArray(a) && a.find((e: unknown) : e is UserDefinedScalePrice => !isUserDefinedScalePrice(e)) === undefined)(_arg.userDefinedScalePrices)
		&& "userDefinedSetupTime" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.userDefinedSetupTime)
		&& "userDefinedUnitTimePerPiece" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.userDefinedUnitTimePerPiece);
}
export function isPackagingUniqueMembers(_arg: unknown): _arg is PackagingUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier);
}
export function isPackaging(_arg: unknown): _arg is Packaging {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "dimX" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.dimX)
		&& "dimY" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.dimY)
		&& "dimZ" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.dimZ)
		&& "maxWeight" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.maxWeight)
		&& "price" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.price)
		&& "tr" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.tr)
		&& "tep" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.tep)
		&& "tea" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.tea)
		&& "packagingWeight" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.packagingWeight);
}
export function isPackagingReplyStateContentInsufficientPackageVolume(_arg: unknown): _arg is PackagingReplyStateContentInsufficientPackageVolume {
	return true;
}
export function isPackagingReplyStateContentOverweightParts(_arg: unknown): _arg is PackagingReplyStateContentOverweightParts {
	return true;
}
export function isPackagingReplyStateContentUndefinedError(_arg: unknown): _arg is PackagingReplyStateContentUndefinedError {
	return true;
}
export function isPoint2(_arg: unknown): _arg is Point2 {
	return typeof _arg === "object" && _arg !== null && "entries" in _arg && ((a: unknown): a is [ (number), (number), ] => {
	const m = [ 
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),];
	return Array.isArray(a) && a.length === m.length && m.every((t, index) => t(a[index]));
})(_arg.entries);
}
export function isPoint3(_arg: unknown): _arg is Point3 {
	return typeof _arg === "object" && _arg !== null && "entries" in _arg && ((a: unknown): a is [ (number), (number), (number), ] => {
	const m = [ 
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),];
	return Array.isArray(a) && a.length === m.length && m.every((t, index) => t(a[index]));
})(_arg.entries);
}
export function isPrivateArticleCalcDataResourceEntry(_arg: unknown): _arg is PrivateArticleCalcDataResourceEntry {
	return typeof _arg === "object" && _arg !== null && "nodeId" in _arg && ((a: unknown): a is GraphNodeId => (typeof a === "object" && a !== null))(_arg.nodeId)
		&& ( !("approxSemimanufacturedShare" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.approxSemimanufacturedShare) )
		&& ( !("manufacturingPriceExclSurcharges" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.manufacturingPriceExclSurcharges) )
		&& ( !("manufacturingPriceInclSurcharges" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.manufacturingPriceInclSurcharges) )
		&& ( !("recursiveManufacturingPriceExclSurcharges" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.recursiveManufacturingPriceExclSurcharges) )
		&& ( !("recursiveManufacturingPriceInclSurcharges" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.recursiveManufacturingPriceInclSurcharges) )
		&& ( !("sellingPrice" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.sellingPrice) )
		&& ( !("recursiveSellingPrice" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.recursiveSellingPrice) );
}
export function isPrivateArticleRepresentation(_arg: unknown): _arg is PrivateArticleRepresentation {
	return typeof _arg === "object" && _arg !== null && "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "externalPartNumber" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.externalPartNumber)
		&& "externalDrawingNumber" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.externalDrawingNumber)
		&& "externalRevisionNumber" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.externalRevisionNumber)
		&& "comment" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.comment)
		&& "multiplicity" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.multiplicity)
		&& "nodeId" in _arg && ((a: unknown): a is GraphNodeId => (typeof a === "object" && a !== null))(_arg.nodeId)
		&& "rootId" in _arg && ((a: unknown): a is GraphNodeRootId => (typeof a === "object" && a !== null))(_arg.rootId)
		&& "nodeIds" in _arg && ((a: unknown): a is (GraphNodeId)[] => Array.isArray(a) && a.find((e: unknown) : e is GraphNodeId => !((a: unknown): a is GraphNodeId => (typeof a === "object" && a !== null))(e)) === undefined)(_arg.nodeIds);
}
export function isPrivateArticleSignatureNodeResourceEntry(_arg: unknown): _arg is PrivateArticleSignatureNodeResourceEntry {
	return typeof _arg === "object" && _arg !== null && "nodeId" in _arg && ((a: unknown): a is GraphNodeId => (typeof a === "object" && a !== null))(_arg.nodeId)
		&& "material" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.material)
		&& ( !("mass" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.mass) )
		&& ( !("sheetThickness" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.sheetThickness) );
}
export function isPrivateArticleTextResourceEntry(_arg: unknown): _arg is PrivateArticleTextResourceEntry {
	return typeof _arg === "object" && _arg !== null && "nodeId" in _arg && ((a: unknown): a is GraphNodeId => (typeof a === "object" && a !== null))(_arg.nodeId)
		&& "details" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.details);
}
export function isPrivateAssemblyResourceEntry(_arg: unknown): _arg is PrivateAssemblyResourceEntry {
	return typeof _arg === "object" && _arg !== null && "nodeId" in _arg && ((a: unknown): a is GraphNodeId => (typeof a === "object" && a !== null))(_arg.nodeId)
		&& "assembly" in _arg && ((a: unknown): a is Assembly => (typeof a === "object" && a !== null))(_arg.assembly);
}
export function isPrivateBinaryResourceEntry(_arg: unknown): _arg is PrivateBinaryResourceEntry {
	return typeof _arg === "object" && _arg !== null && "nodeId" in _arg && ((a: unknown): a is GraphNodeId => (typeof a === "object" && a !== null))(_arg.nodeId)
		&& "data" in _arg && ((a: unknown): a is ArrayBuffer => a instanceof ArrayBuffer)(_arg.data);
}
export function isPrivateEditingNote(_arg: unknown): _arg is PrivateEditingNote {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.type)
		&& "message" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.message);
}
export function isPrivateEditingNotesResourceEntry(_arg: unknown): _arg is PrivateEditingNotesResourceEntry {
	return typeof _arg === "object" && _arg !== null && "nodeId" in _arg && ((a: unknown): a is GraphNodeId => (typeof a === "object" && a !== null))(_arg.nodeId)
		&& "notes" in _arg && ((a: unknown): a is (PrivateEditingNote)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateEditingNote => !isPrivateEditingNote(e)) === undefined)(_arg.notes);
}
export function isPrivateForceSheetMetalPartResourceEntry(_arg: unknown): _arg is PrivateForceSheetMetalPartResourceEntry {
	return typeof _arg === "object" && _arg !== null && "nodeId" in _arg && ((a: unknown): a is GraphNodeId => (typeof a === "object" && a !== null))(_arg.nodeId)
		&& "canForceFuture" in _arg && ((a: unknown): a is BooleanFuture => (typeof a === "object" && a !== null))(_arg.canForceFuture);
}
export function isPrivateGraphData(_arg: unknown): _arg is PrivateGraphData {
	return typeof _arg === "object" && _arg !== null && "projectName" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.projectName);
}
export function isPrivateGuiData(_arg: unknown): _arg is PrivateGuiData {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && "content" in _arg && isPrivateGuiDataType(_arg.type) && (() : boolean => {
	switch (_arg.type) {
		case "graphRep" : return isPrivateGuiDataGraphRep(_arg.content);
	}})()
;
}
export function isPrivateGuiDataGraphRep(_arg: unknown): _arg is PrivateGuiDataGraphRep {
	return typeof _arg === "object" && _arg !== null && "nodes" in _arg && ((a: unknown): a is (PrivateNodeRepresentation)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateNodeRepresentation => !isPrivateNodeRepresentation(e)) === undefined)(_arg.nodes)
		&& "articles" in _arg && ((a: unknown): a is (PrivateArticleRepresentation)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateArticleRepresentation => !isPrivateArticleRepresentation(e)) === undefined)(_arg.articles)
		&& "resources" in _arg && isPrivateResources(_arg.resources)
		&& "data" in _arg && isPrivateGraphData(_arg.data)
		&& "sourceMults" in _arg && ((a: unknown): a is (PrivateSourceMultEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateSourceMultEntry => !isPrivateSourceMultEntry(e)) === undefined)(_arg.sourceMults);
}
export function isPrivateMainWindowScriptAction(_arg: unknown): _arg is PrivateMainWindowScriptAction {
	return typeof _arg === "object" && _arg !== null && "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "modulePath" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.modulePath)
		&& "functionName" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.functionName)
		&& ( !("shortcut" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.shortcut) )
		&& ( !("icon" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.icon) )
		&& ( !("menuType" in _arg) || ((a: unknown): a is PrivateMainWindowMenuType => (a === undefined || isPrivateMainWindowMenuType(a)))(_arg.menuType) );
}
export function isPrivateMainWindowScriptConfig(_arg: unknown): _arg is PrivateMainWindowScriptConfig {
	return typeof _arg === "object" && _arg !== null && "scripts" in _arg && ((a: unknown): a is (PrivateMainWindowScriptAction)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateMainWindowScriptAction => !isPrivateMainWindowScriptAction(e)) === undefined)(_arg.scripts);
}
export function isPrivateManufacturingStateEntry(_arg: unknown): _arg is PrivateManufacturingStateEntry {
	return typeof _arg === "object" && _arg !== null && "level" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.level)
		&& "message" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.message);
}
export function isPrivateManufacturingStateResourceEntry(_arg: unknown): _arg is PrivateManufacturingStateResourceEntry {
	return typeof _arg === "object" && _arg !== null && "nodeId" in _arg && ((a: unknown): a is GraphNodeId => (typeof a === "object" && a !== null))(_arg.nodeId)
		&& "actualState" in _arg && ((a: unknown): a is (PrivateManufacturingStateEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateManufacturingStateEntry => !isPrivateManufacturingStateEntry(e)) === undefined)(_arg.actualState)
		&& "virtualState" in _arg && ((a: unknown): a is (PrivateManufacturingStateEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateManufacturingStateEntry => !isPrivateManufacturingStateEntry(e)) === undefined)(_arg.virtualState);
}
export function isPrivateMeasurementScenesResourceEntry(_arg: unknown): _arg is PrivateMeasurementScenesResourceEntry {
	return typeof _arg === "object" && _arg !== null && "nodeId" in _arg && ((a: unknown): a is GraphNodeId => (typeof a === "object" && a !== null))(_arg.nodeId)
		&& "data" in _arg && ((a: unknown): a is (MeasurementScene)[] => Array.isArray(a) && a.find((e: unknown) : e is MeasurementScene => !isMeasurementScene(e)) === undefined)(_arg.data);
}
export function isPrivateNodeCalcDataResourceEntry(_arg: unknown): _arg is PrivateNodeCalcDataResourceEntry {
	return typeof _arg === "object" && _arg !== null && "nodeId" in _arg && ((a: unknown): a is GraphNodeId => (typeof a === "object" && a !== null))(_arg.nodeId)
		&& ( !("materialCosts" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.materialCosts) )
		&& ( !("setupTime" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.setupTime) )
		&& ( !("unitTime" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.unitTime) )
		&& ( !("manufacturingPriceExclSurcharges" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.manufacturingPriceExclSurcharges) )
		&& ( !("manufacturingPriceInclSurcharges" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.manufacturingPriceInclSurcharges) )
		&& ( !("sellingPrice" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.sellingPrice) );
}
export function isPrivateNodeRepresentation(_arg: unknown): _arg is PrivateNodeRepresentation {
	return typeof _arg === "object" && _arg !== null && "nodeId" in _arg && ((a: unknown): a is GraphNodeId => (typeof a === "object" && a !== null))(_arg.nodeId)
		&& "rootId" in _arg && ((a: unknown): a is GraphNodeRootId => (typeof a === "object" && a !== null))(_arg.rootId)
		&& "sourceNodeIds" in _arg && ((a: unknown): a is (GraphNodeId)[] => Array.isArray(a) && a.find((e: unknown) : e is GraphNodeId => !((a: unknown): a is GraphNodeId => (typeof a === "object" && a !== null))(e)) === undefined)(_arg.sourceNodeIds)
		&& "targetNodeIds" in _arg && ((a: unknown): a is (GraphNodeId)[] => Array.isArray(a) && a.find((e: unknown) : e is GraphNodeId => !((a: unknown): a is GraphNodeId => (typeof a === "object" && a !== null))(e)) === undefined)(_arg.targetNodeIds)
		&& "workStepType" in _arg && isWorkStepType(_arg.workStepType)
		&& "processType" in _arg && isProcessType(_arg.processType)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "processName" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processName)
		&& "comment" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.comment)
		&& "hasTwoDimInput" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.hasTwoDimInput)
		&& "hasCalcOverride" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.hasCalcOverride);
}
export function isPrivateNodeTextResourceEntry(_arg: unknown): _arg is PrivateNodeTextResourceEntry {
	return typeof _arg === "object" && _arg !== null && "nodeId" in _arg && ((a: unknown): a is GraphNodeId => (typeof a === "object" && a !== null))(_arg.nodeId)
		&& "brief" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.brief)
		&& "details" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.details)
		&& "toolTip" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.toolTip);
}
export function isPrivatePostProcessingResultCreateSourcesSheetCutting(_arg: unknown): _arg is PrivatePostProcessingResultCreateSourcesSheetCutting {
	return typeof _arg === "object" && _arg !== null && "source" in _arg && ((a: unknown): a is Vertex => (typeof a === "number"))(_arg.source)
		&& "deducedDataOfSource" in _arg && isStringIndexedInterface(_arg.deducedDataOfSource);
}
export function isPrivatePostProcessingResultCreateWorkStep(_arg: unknown): _arg is PrivatePostProcessingResultCreateWorkStep {
	return typeof _arg === "object" && _arg !== null && "processType" in _arg && isProcessType(_arg.processType)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "nodeUserData" in _arg && isStringIndexedInterface(_arg.nodeUserData)
		&& ( !("articleUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.articleUserData) );
}
export function isPrivateProblematicGeometryResourceEntry(_arg: unknown): _arg is PrivateProblematicGeometryResourceEntry {
	return typeof _arg === "object" && _arg !== null && "nodeId" in _arg && ((a: unknown): a is GraphNodeId => (typeof a === "object" && a !== null))(_arg.nodeId)
		&& "hasProblematicGeometries" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.hasProblematicGeometries);
}
export function isPrivateResources(_arg: unknown): _arg is PrivateResources {
	return typeof _arg === "object" && _arg !== null && "pngs" in _arg && ((a: unknown): a is (PrivateBinaryResourceEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateBinaryResourceEntry => !isPrivateBinaryResourceEntry(e)) === undefined)(_arg.pngs)
		&& "inputAssemblies" in _arg && ((a: unknown): a is (PrivateAssemblyResourceEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateAssemblyResourceEntry => !isPrivateAssemblyResourceEntry(e)) === undefined)(_arg.inputAssemblies)
		&& "outputAssemblies" in _arg && ((a: unknown): a is (PrivateAssemblyResourceEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateAssemblyResourceEntry => !isPrivateAssemblyResourceEntry(e)) === undefined)(_arg.outputAssemblies)
		&& "defaultScenes" in _arg && ((a: unknown): a is (PrivateSceneResourceEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateSceneResourceEntry => !isPrivateSceneResourceEntry(e)) === undefined)(_arg.defaultScenes)
		&& "bendZoneScenes" in _arg && ((a: unknown): a is (PrivateSceneResourceEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateSceneResourceEntry => !isPrivateSceneResourceEntry(e)) === undefined)(_arg.bendZoneScenes)
		&& "lowerDieAffectZoneScenes" in _arg && ((a: unknown): a is (PrivateSceneResourceEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateSceneResourceEntry => !isPrivateSceneResourceEntry(e)) === undefined)(_arg.lowerDieAffectZoneScenes)
		&& "technicalDrawingScenes" in _arg && ((a: unknown): a is (PrivateMeasurementScenesResourceEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateMeasurementScenesResourceEntry => !isPrivateMeasurementScenesResourceEntry(e)) === undefined)(_arg.technicalDrawingScenes)
		&& "tubeOutlineScenes" in _arg && ((a: unknown): a is (PrivateSceneResourceEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateSceneResourceEntry => !isPrivateSceneResourceEntry(e)) === undefined)(_arg.tubeOutlineScenes)
		&& "editingNotes" in _arg && ((a: unknown): a is (PrivateEditingNotesResourceEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateEditingNotesResourceEntry => !isPrivateEditingNotesResourceEntry(e)) === undefined)(_arg.editingNotes)
		&& "manufacturingStates" in _arg && ((a: unknown): a is (PrivateManufacturingStateResourceEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateManufacturingStateResourceEntry => !isPrivateManufacturingStateResourceEntry(e)) === undefined)(_arg.manufacturingStates)
		&& "nodeTexts" in _arg && ((a: unknown): a is (PrivateNodeTextResourceEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateNodeTextResourceEntry => !isPrivateNodeTextResourceEntry(e)) === undefined)(_arg.nodeTexts)
		&& "articleTexts" in _arg && ((a: unknown): a is (PrivateArticleTextResourceEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateArticleTextResourceEntry => !isPrivateArticleTextResourceEntry(e)) === undefined)(_arg.articleTexts)
		&& "articleCalcData" in _arg && ((a: unknown): a is (PrivateArticleCalcDataResourceEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateArticleCalcDataResourceEntry => !isPrivateArticleCalcDataResourceEntry(e)) === undefined)(_arg.articleCalcData)
		&& "articleSignatureNodeData" in _arg && ((a: unknown): a is (PrivateArticleSignatureNodeResourceEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateArticleSignatureNodeResourceEntry => !isPrivateArticleSignatureNodeResourceEntry(e)) === undefined)(_arg.articleSignatureNodeData)
		&& "nodeCalcData" in _arg && ((a: unknown): a is (PrivateNodeCalcDataResourceEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateNodeCalcDataResourceEntry => !isPrivateNodeCalcDataResourceEntry(e)) === undefined)(_arg.nodeCalcData)
		&& "nodeProblematicGeometryData" in _arg && ((a: unknown): a is (PrivateProblematicGeometryResourceEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateProblematicGeometryResourceEntry => !isPrivateProblematicGeometryResourceEntry(e)) === undefined)(_arg.nodeProblematicGeometryData)
		&& "nodeForceSheetMetalPartData" in _arg && ((a: unknown): a is (PrivateForceSheetMetalPartResourceEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is PrivateForceSheetMetalPartResourceEntry => !isPrivateForceSheetMetalPartResourceEntry(e)) === undefined)(_arg.nodeForceSheetMetalPartData);
}
export function isPrivateSceneResourceEntry(_arg: unknown): _arg is PrivateSceneResourceEntry {
	return typeof _arg === "object" && _arg !== null && "nodeId" in _arg && ((a: unknown): a is GraphNodeId => (typeof a === "object" && a !== null))(_arg.nodeId)
		&& "data" in _arg && ((a: unknown): a is Scene => (typeof a === "object" && a !== null))(_arg.data);
}
export function isPrivateSheetTablesEditorInitData(_arg: unknown): _arg is PrivateSheetTablesEditorInitData {
	return typeof _arg === "object" && _arg !== null && "sheetMaterials" in _arg && ((a: unknown): a is (SheetMaterial)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetMaterial => !isSheetMaterial(e)) === undefined)(_arg.sheetMaterials)
		&& "sheetMaterialDensities" in _arg && ((a: unknown): a is (SheetMaterialDensity)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetMaterialDensity => !isSheetMaterialDensity(e)) === undefined)(_arg.sheetMaterialDensities)
		&& "sheetMaterialScrapValues" in _arg && ((a: unknown): a is (SheetMaterialScrapValue)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetMaterialScrapValue => !isSheetMaterialScrapValue(e)) === undefined)(_arg.sheetMaterialScrapValues)
		&& "sheets" in _arg && ((a: unknown): a is (Sheet)[] => Array.isArray(a) && a.find((e: unknown) : e is Sheet => !isSheet(e)) === undefined)(_arg.sheets)
		&& "sheetPrices" in _arg && ((a: unknown): a is (SheetPrice)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetPrice => !isSheetPrice(e)) === undefined)(_arg.sheetPrices)
		&& "sheetStocks" in _arg && ((a: unknown): a is (SheetStock)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetStock => !isSheetStock(e)) === undefined)(_arg.sheetStocks)
		&& "sheetModuli" in _arg && ((a: unknown): a is (SheetModulus)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetModulus => !isSheetModulus(e)) === undefined)(_arg.sheetModuli)
		&& "sheetPriorities" in _arg && ((a: unknown): a is (SheetPriority)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetPriority => !isSheetPriority(e)) === undefined)(_arg.sheetPriorities)
		&& "sheetCuttingMaterials" in _arg && ((a: unknown): a is (SheetCuttingMaterial)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetCuttingMaterial => !isSheetCuttingMaterial(e)) === undefined)(_arg.sheetCuttingMaterials)
		&& "sheetBendingMaterials" in _arg && ((a: unknown): a is (SheetBendingMaterial)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetBendingMaterial => !isSheetBendingMaterial(e)) === undefined)(_arg.sheetBendingMaterials)
		&& "sheetCuttingMaterialMappings" in _arg && ((a: unknown): a is (SheetCuttingMaterialMapping)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetCuttingMaterialMapping => !isSheetCuttingMaterialMapping(e)) === undefined)(_arg.sheetCuttingMaterialMappings)
		&& "sheetBendingMaterialMappings" in _arg && ((a: unknown): a is (SheetBendingMaterialMapping)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetBendingMaterialMapping => !isSheetBendingMaterialMapping(e)) === undefined)(_arg.sheetBendingMaterialMappings);
}
export function isPrivateSourceMultEntry(_arg: unknown): _arg is PrivateSourceMultEntry {
	return typeof _arg === "object" && _arg !== null && "sourceArticleNodeId" in _arg && ((a: unknown): a is GraphNodeId => (typeof a === "object" && a !== null))(_arg.sourceArticleNodeId)
		&& "targetArticleNodeId" in _arg && ((a: unknown): a is GraphNodeId => (typeof a === "object" && a !== null))(_arg.targetArticleNodeId)
		&& "multiplicity" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.multiplicity);
}
export function isPrivateTubeTablesEditorInitData(_arg: unknown): _arg is PrivateTubeTablesEditorInitData {
	return typeof _arg === "object" && _arg !== null && "tubeMaterials" in _arg && ((a: unknown): a is (TubeMaterial)[] => Array.isArray(a) && a.find((e: unknown) : e is TubeMaterial => !isTubeMaterial(e)) === undefined)(_arg.tubeMaterials)
		&& "tubeMaterialDensities" in _arg && ((a: unknown): a is (TubeMaterialDensity)[] => Array.isArray(a) && a.find((e: unknown) : e is TubeMaterialDensity => !isTubeMaterialDensity(e)) === undefined)(_arg.tubeMaterialDensities)
		&& "tubeProfiles" in _arg && ((a: unknown): a is (TubeProfile)[] => Array.isArray(a) && a.find((e: unknown) : e is TubeProfile => !isTubeProfile(e)) === undefined)(_arg.tubeProfiles)
		&& "tubeSpecifications" in _arg && ((a: unknown): a is (TubeSpecification)[] => Array.isArray(a) && a.find((e: unknown) : e is TubeSpecification => !isTubeSpecification(e)) === undefined)(_arg.tubeSpecifications)
		&& "tubes" in _arg && ((a: unknown): a is (Tube)[] => Array.isArray(a) && a.find((e: unknown) : e is Tube => !isTube(e)) === undefined)(_arg.tubes);
}
export function isProcessUniqueMembers(_arg: unknown): _arg is ProcessUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier);
}
export function isProcess(_arg: unknown): _arg is Process {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier)
		&& "parentIdentifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.parentIdentifier)
		&& "type" in _arg && isProcessType(_arg.type)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "costCenter" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.costCenter)
		&& "priority" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.priority)
		&& "active" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.active)
		&& "childrenActive" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.childrenActive)
		&& "description" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.description);
}
export function isProcessConstraintsPurchasePartMaterialUniqueMembers(_arg: unknown): _arg is ProcessConstraintsPurchasePartMaterialUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "purchasePartMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.purchasePartMaterialId);
}
export function isProcessConstraintsPurchasePartMaterial(_arg: unknown): _arg is ProcessConstraintsPurchasePartMaterial {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "purchasePartMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.purchasePartMaterialId)
		&& "isAllowed" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.isAllowed);
}
export function isProcessConstraintsSheetMaterialUniqueMembers(_arg: unknown): _arg is ProcessConstraintsSheetMaterialUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "sheetMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetMaterialId);
}
export function isProcessConstraintsSheetMaterial(_arg: unknown): _arg is ProcessConstraintsSheetMaterial {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "sheetMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetMaterialId)
		&& "isAllowed" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.isAllowed);
}
export function isProcessConstraintsTubeMaterialUniqueMembers(_arg: unknown): _arg is ProcessConstraintsTubeMaterialUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "tubeMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeMaterialId);
}
export function isProcessConstraintsTubeMaterial(_arg: unknown): _arg is ProcessConstraintsTubeMaterial {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "tubeMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeMaterialId)
		&& "isAllowed" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.isAllowed);
}
export function isProcessConsumableRateUniqueMembers(_arg: unknown): _arg is ProcessConsumableRateUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "consumableId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.consumableId);
}
export function isProcessConsumableRate(_arg: unknown): _arg is ProcessConsumableRate {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "consumableId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.consumableId)
		&& "unitsPerHour" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.unitsPerHour);
}
export function isProcessHandlingTimeUniqueMembers(_arg: unknown): _arg is ProcessHandlingTimeUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "mass" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.mass);
}
export function isProcessHandlingTime(_arg: unknown): _arg is ProcessHandlingTime {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "mass" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.mass)
		&& "setupTimeDelta" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.setupTimeDelta)
		&& "unitTimeDelta" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.unitTimeDelta);
}
export function isProcessIdlePeriodUniqueMembers(_arg: unknown): _arg is ProcessIdlePeriodUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId);
}
export function isProcessIdlePeriod(_arg: unknown): _arg is ProcessIdlePeriod {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "time" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.time);
}
export function isProcessRateUniqueMembers(_arg: unknown): _arg is ProcessRateUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId);
}
export function isProcessRate(_arg: unknown): _arg is ProcessRate {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "rate" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.rate);
}
export function isProcessSetupTimeFallbackUniqueMembers(_arg: unknown): _arg is ProcessSetupTimeFallbackUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId);
}
export function isProcessSetupTimeFallback(_arg: unknown): _arg is ProcessSetupTimeFallback {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "time" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.time);
}
export function isProcessUnitTimeFallbackUniqueMembers(_arg: unknown): _arg is ProcessUnitTimeFallbackUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId);
}
export function isProcessUnitTimeFallback(_arg: unknown): _arg is ProcessUnitTimeFallback {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "time" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.time);
}
export function isProfileShadow(_arg: unknown): _arg is ProfileShadow {
	return typeof _arg === "object" && _arg !== null && "coordinateSystem" in _arg && isCoordinateSystem3(_arg.coordinateSystem)
		&& "shadow" in _arg && ((a: unknown): a is InnerOuterPolygon => (typeof a === "object" && a !== null))(_arg.shadow);
}
export function isProgramVersion(_arg: unknown): _arg is ProgramVersion {
	return typeof _arg === "object" && _arg !== null && "major" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.major)
		&& "minor" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.minor)
		&& "patch" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.patch);
}
export function isPurchasePartMaterialUniqueMembers(_arg: unknown): _arg is PurchasePartMaterialUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier);
}
export function isPurchasePartMaterial(_arg: unknown): _arg is PurchasePartMaterial {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "density" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.density)
		&& "description" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.description);
}
export function isReferredEntryMissingTableError(_arg: unknown): _arg is ReferredEntryMissingTableError {
	return typeof _arg === "object" && _arg !== null && "affectedRowType" in _arg && isTableType(_arg.affectedRowType)
		&& "affectedRowIndex" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.affectedRowIndex)
		&& "affectedColumnIndex" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.affectedColumnIndex)
		&& "relatedRowType" in _arg && isTableType(_arg.relatedRowType)
		&& "relatedColumnIndex" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.relatedColumnIndex)
		&& "referredId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.referredId);
}
export function isReferringEntryMissingTableError(_arg: unknown): _arg is ReferringEntryMissingTableError {
	return typeof _arg === "object" && _arg !== null && "affectedRowType" in _arg && isTableType(_arg.affectedRowType)
		&& "affectedColumnIndex" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.affectedColumnIndex)
		&& "relatedRowType" in _arg && isTableType(_arg.relatedRowType)
		&& "relatedRowIndex" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.relatedRowIndex)
		&& "relatedColumnIndex" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.relatedColumnIndex);
}
export function isRenderSceneSettings(_arg: unknown): _arg is RenderSceneSettings {
	return typeof _arg === "object" && _arg !== null && "resolution" in _arg && isResolution(_arg.resolution)
		&& ( !("viewPort" in _arg) || ((a: unknown): a is Box2 => (a === undefined || isBox2(a)))(_arg.viewPort) );
}
export function isReplyStateIndicatorMap(_arg: unknown): _arg is ReplyStateIndicatorMap {
	return typeof _arg === "object" && _arg !== null && ( !("undefined" in _arg) || ((a: unknown): a is ReplyStateIndicatorsUndefined => (a === undefined || isReplyStateIndicatorsUndefined(a)))(_arg.undefined) )
		&& ( !("sheet" in _arg) || ((a: unknown): a is ReplyStateIndicatorsSheet => (a === undefined || isReplyStateIndicatorsSheet(a)))(_arg.sheet) )
		&& ( !("sheetCutting" in _arg) || ((a: unknown): a is ReplyStateIndicatorsSheetCutting => (a === undefined || isReplyStateIndicatorsSheetCutting(a)))(_arg.sheetCutting) )
		&& ( !("joining" in _arg) || ((a: unknown): a is ReplyStateIndicatorsJoining => (a === undefined || isReplyStateIndicatorsJoining(a)))(_arg.joining) )
		&& ( !("tubeCutting" in _arg) || ((a: unknown): a is ReplyStateIndicatorsTubeCutting => (a === undefined || isReplyStateIndicatorsTubeCutting(a)))(_arg.tubeCutting) )
		&& ( !("sheetBending" in _arg) || ((a: unknown): a is ReplyStateIndicatorsSheetBending => (a === undefined || isReplyStateIndicatorsSheetBending(a)))(_arg.sheetBending) )
		&& ( !("userDefined" in _arg) || ((a: unknown): a is ReplyStateIndicatorsUserDefined => (a === undefined || isReplyStateIndicatorsUserDefined(a)))(_arg.userDefined) )
		&& ( !("userDefinedBase" in _arg) || ((a: unknown): a is ReplyStateIndicatorsUserDefinedBase => (a === undefined || isReplyStateIndicatorsUserDefinedBase(a)))(_arg.userDefinedBase) )
		&& ( !("packaging" in _arg) || ((a: unknown): a is ReplyStateIndicatorsPackaging => (a === undefined || isReplyStateIndicatorsPackaging(a)))(_arg.packaging) )
		&& ( !("transform" in _arg) || ((a: unknown): a is ReplyStateIndicatorsTransform => (a === undefined || isReplyStateIndicatorsTransform(a)))(_arg.transform) )
		&& ( !("tube" in _arg) || ((a: unknown): a is ReplyStateIndicatorsTube => (a === undefined || isReplyStateIndicatorsTube(a)))(_arg.tube) );
}
export function isReplyStateIndicatorsJoining(_arg: unknown): _arg is ReplyStateIndicatorsJoining {
	return typeof _arg === "object" && _arg !== null && "replyStateIndicators" in _arg && isReplyStateMapJoining(_arg.replyStateIndicators);
}
export function isReplyStateIndicatorsPackaging(_arg: unknown): _arg is ReplyStateIndicatorsPackaging {
	return typeof _arg === "object" && _arg !== null && "replyStateIndicators" in _arg && isReplyStateMapPackaging(_arg.replyStateIndicators);
}
export function isReplyStateIndicatorsSheet(_arg: unknown): _arg is ReplyStateIndicatorsSheet {
	return typeof _arg === "object" && _arg !== null && "replyStateIndicators" in _arg && isReplyStateMapSheet(_arg.replyStateIndicators);
}
export function isReplyStateIndicatorsSheetBending(_arg: unknown): _arg is ReplyStateIndicatorsSheetBending {
	return typeof _arg === "object" && _arg !== null && "replyStateIndicators" in _arg && isReplyStateMapSheetBending(_arg.replyStateIndicators);
}
export function isReplyStateIndicatorsSheetCutting(_arg: unknown): _arg is ReplyStateIndicatorsSheetCutting {
	return typeof _arg === "object" && _arg !== null && "replyStateIndicators" in _arg && isReplyStateMapSheetCutting(_arg.replyStateIndicators);
}
export function isReplyStateIndicatorsTransform(_arg: unknown): _arg is ReplyStateIndicatorsTransform {
	return typeof _arg === "object" && _arg !== null && "replyStateIndicators" in _arg && isReplyStateMapTransform(_arg.replyStateIndicators);
}
export function isReplyStateIndicatorsTube(_arg: unknown): _arg is ReplyStateIndicatorsTube {
	return typeof _arg === "object" && _arg !== null && "replyStateIndicators" in _arg && isReplyStateMapTube(_arg.replyStateIndicators);
}
export function isReplyStateIndicatorsTubeCutting(_arg: unknown): _arg is ReplyStateIndicatorsTubeCutting {
	return typeof _arg === "object" && _arg !== null && "replyStateIndicators" in _arg && isReplyStateMapTubeCutting(_arg.replyStateIndicators);
}
export function isReplyStateIndicatorsUndefined(_arg: unknown): _arg is ReplyStateIndicatorsUndefined {
	return typeof _arg === "object" && _arg !== null && "replyStateIndicators" in _arg && isReplyStateMapUndefined(_arg.replyStateIndicators);
}
export function isReplyStateIndicatorsUserDefined(_arg: unknown): _arg is ReplyStateIndicatorsUserDefined {
	return typeof _arg === "object" && _arg !== null && "replyStateIndicators" in _arg && isReplyStateMapUserDefined(_arg.replyStateIndicators);
}
export function isReplyStateIndicatorsUserDefinedBase(_arg: unknown): _arg is ReplyStateIndicatorsUserDefinedBase {
	return typeof _arg === "object" && _arg !== null && "replyStateIndicators" in _arg && isReplyStateMapUserDefinedBase(_arg.replyStateIndicators);
}
export function isReplyStateMapJoining(_arg: unknown): _arg is ReplyStateMapJoining {
	return typeof _arg === "object" && _arg !== null && ( !("undefinedError" in _arg) || ((a: unknown): a is JoiningReplyStateContentUndefinedError => (a === undefined || isJoiningReplyStateContentUndefinedError(a)))(_arg.undefinedError) );
}
export function isReplyStateMapPackaging(_arg: unknown): _arg is ReplyStateMapPackaging {
	return typeof _arg === "object" && _arg !== null && ( !("undefinedError" in _arg) || ((a: unknown): a is PackagingReplyStateContentUndefinedError => (a === undefined || isPackagingReplyStateContentUndefinedError(a)))(_arg.undefinedError) )
		&& ( !("insufficientPackageVolume" in _arg) || ((a: unknown): a is PackagingReplyStateContentInsufficientPackageVolume => (a === undefined || isPackagingReplyStateContentInsufficientPackageVolume(a)))(_arg.insufficientPackageVolume) )
		&& ( !("overweightParts" in _arg) || ((a: unknown): a is PackagingReplyStateContentOverweightParts => (a === undefined || isPackagingReplyStateContentOverweightParts(a)))(_arg.overweightParts) );
}
export function isReplyStateMapSheet(_arg: unknown): _arg is ReplyStateMapSheet {
	return typeof _arg === "object" && _arg !== null && ( !("undefinedError" in _arg) || ((a: unknown): a is SheetReplyStateContentUndefinedError => (a === undefined || isSheetReplyStateContentUndefinedError(a)))(_arg.undefinedError) )
		&& ( !("nestingFailed" in _arg) || ((a: unknown): a is SheetReplyStateContentNestingFailedError => (a === undefined || isSheetReplyStateContentNestingFailedError(a)))(_arg.nestingFailed) );
}
export function isReplyStateMapSheetBending(_arg: unknown): _arg is ReplyStateMapSheetBending {
	return typeof _arg === "object" && _arg !== null && ( !("undefinedError" in _arg) || ((a: unknown): a is BendReplyStateContentUndefinedError => (a === undefined || isBendReplyStateContentUndefinedError(a)))(_arg.undefinedError) )
		&& ( !("multipleOuterContours" in _arg) || ((a: unknown): a is BendReplyStateContentMultipleOuterContours => (a === undefined || isBendReplyStateContentMultipleOuterContours(a)))(_arg.multipleOuterContours) )
		&& ( !("contourInBend" in _arg) || ((a: unknown): a is BendReplyStateContentContourInBend => (a === undefined || isBendReplyStateContentContourInBend(a)))(_arg.contourInBend) )
		&& ( !("invalidBend" in _arg) || ((a: unknown): a is BendReplyStateContentInvalidBend => (a === undefined || isBendReplyStateContentInvalidBend(a)))(_arg.invalidBend) )
		&& ( !("undetectedFeatures" in _arg) || ((a: unknown): a is BendReplyStateContentUndetectedFeatures => (a === undefined || isBendReplyStateContentUndetectedFeatures(a)))(_arg.undetectedFeatures) )
		&& ( !("unfoldingFailed" in _arg) || ((a: unknown): a is BendReplyStateContentUnfoldingFailed => (a === undefined || isBendReplyStateContentUnfoldingFailed(a)))(_arg.unfoldingFailed) )
		&& ( !("bendDeductionApplicationFailed" in _arg) || ((a: unknown): a is BendReplyStateContentBendDeductionApplicationFailed => (a === undefined || isBendReplyStateContentBendDeductionApplicationFailed(a)))(_arg.bendDeductionApplicationFailed) );
}
export function isReplyStateMapSheetCutting(_arg: unknown): _arg is ReplyStateMapSheetCutting {
	return typeof _arg === "object" && _arg !== null && ( !("undefinedError" in _arg) || ((a: unknown): a is SheetCuttingReplyStateContentUndefinedError => (a === undefined || isSheetCuttingReplyStateContentUndefinedError(a)))(_arg.undefinedError) )
		&& ( !("undetectedFeatures" in _arg) || ((a: unknown): a is SheetCuttingReplyStateContentUndetectedFeatures => (a === undefined || isSheetCuttingReplyStateContentUndetectedFeatures(a)))(_arg.undetectedFeatures) )
		&& ( !("multipleOuterContours" in _arg) || ((a: unknown): a is SheetCuttingReplyStateContentMultipleOuterContours => (a === undefined || isSheetCuttingReplyStateContentMultipleOuterContours(a)))(_arg.multipleOuterContours) )
		&& ( !("unused0" in _arg) || ((a: unknown): a is Unused => (a === undefined || isUnused(a)))(_arg.unused0) );
}
export function isReplyStateMapTransform(_arg: unknown): _arg is ReplyStateMapTransform {
	return typeof _arg === "object" && _arg !== null && ( !("undefinedError" in _arg) || ((a: unknown): a is TransformReplyStateContentUndefinedError => (a === undefined || isTransformReplyStateContentUndefinedError(a)))(_arg.undefinedError) );
}
export function isReplyStateMapTube(_arg: unknown): _arg is ReplyStateMapTube {
	return typeof _arg === "object" && _arg !== null && ( !("undefinedError" in _arg) || ((a: unknown): a is TubeReplyStateContentUndefinedError => (a === undefined || isTubeReplyStateContentUndefinedError(a)))(_arg.undefinedError) );
}
export function isReplyStateMapTubeCutting(_arg: unknown): _arg is ReplyStateMapTubeCutting {
	return typeof _arg === "object" && _arg !== null && ( !("undefinedError" in _arg) || ((a: unknown): a is TubeCuttingReplyStateContentUndefinedError => (a === undefined || isTubeCuttingReplyStateContentUndefinedError(a)))(_arg.undefinedError) )
		&& ( !("undetectedFeatures" in _arg) || ((a: unknown): a is TubeCuttingReplyStateContentUndetectedFeatures => (a === undefined || isTubeCuttingReplyStateContentUndetectedFeatures(a)))(_arg.undetectedFeatures) );
}
export function isReplyStateMapUndefined(_arg: unknown): _arg is ReplyStateMapUndefined {
	return typeof _arg === "object" && _arg !== null && ( !("undefinedError" in _arg) || ((a: unknown): a is UndefinedReplyStateContentUndefinedError => (a === undefined || isUndefinedReplyStateContentUndefinedError(a)))(_arg.undefinedError) );
}
export function isReplyStateMapUserDefined(_arg: unknown): _arg is ReplyStateMapUserDefined {
	return typeof _arg === "object" && _arg !== null && ( !("undefinedError" in _arg) || ((a: unknown): a is UserDefinedReplyStateContentUndefinedError => (a === undefined || isUserDefinedReplyStateContentUndefinedError(a)))(_arg.undefinedError) );
}
export function isReplyStateMapUserDefinedBase(_arg: unknown): _arg is ReplyStateMapUserDefinedBase {
	return typeof _arg === "object" && _arg !== null && ( !("undefinedError" in _arg) || ((a: unknown): a is UserDefinedBaseReplyStateContentUndefinedError => (a === undefined || isUserDefinedBaseReplyStateContentUndefinedError(a)))(_arg.undefinedError) );
}
export function isResolution(_arg: unknown): _arg is Resolution {
	return typeof _arg === "object" && _arg !== null && "width" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.width)
		&& "height" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.height);
}
export function isSceneConfig(_arg: unknown): _arg is SceneConfig {
	return typeof _arg === "object" && _arg !== null && ( !("elements" in _arg) || ((a: unknown): a is SceneElements => (a === undefined || isSceneElements(a)))(_arg.elements) )
		&& ( !("sceneId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.sceneId) )
		&& ( !("fontSize" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.fontSize) )
		&& ( !("textItems" in _arg) || ((a: unknown): a is (SceneTextItem)[] => (a === undefined || ((a: unknown): a is (SceneTextItem)[] => Array.isArray(a) && a.find((e: unknown) : e is SceneTextItem => !isSceneTextItem(e)) === undefined)(a)))(_arg.textItems) )
		&& ( !("sheetBendingBendLineMaxEngravingLength" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.sheetBendingBendLineMaxEngravingLength) )
		&& ( !("sheetExtraText" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.sheetExtraText) )
		&& ( !("sheetNestingDissections" in _arg) || ((a: unknown): a is (NestingDissection)[] => (a === undefined || ((a: unknown): a is (NestingDissection)[] => Array.isArray(a) && a.find((e: unknown) : e is NestingDissection => !isNestingDissection(e)) === undefined)(a)))(_arg.sheetNestingDissections) );
}
export function isSceneLabel(_arg: unknown): _arg is SceneLabel {
	return typeof _arg === "object" && _arg !== null && "position" in _arg && isPoint2(_arg.position)
		&& "text" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.text)
		&& "fontSize" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.fontSize);
}
export function isSceneObjectData(_arg: unknown): _arg is SceneObjectData {
	return typeof _arg === "object" && _arg !== null && "zValue" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.zValue)
		&& "bendAngle" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.bendAngle)
		&& "innerRadius" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.innerRadius)
		&& "upperDieGroup" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.upperDieGroup)
		&& "lowerDieGroup" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.lowerDieGroup)
		&& "sharpDeduction" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.sharpDeduction);
}
export function isSceneSceneData(_arg: unknown): _arg is SceneSceneData {
	return typeof _arg === "object" && _arg !== null && "material" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.material)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier)
		&& "comment" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.comment)
		&& "globalMaterial" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.globalMaterial);
}
export function isSceneStyle(_arg: unknown): _arg is SceneStyle {
	return typeof _arg === "object" && _arg !== null && ( !("strokeWidth" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.strokeWidth) )
		&& ( !("strokeColor" in _arg) || ((a: unknown): a is Color => (a === undefined || isColor(a)))(_arg.strokeColor) )
		&& ( !("fillColor" in _arg) || ((a: unknown): a is Vector4 => (a === undefined || isVector4(a)))(_arg.fillColor) )
		&& ( !("strokeStyle" in _arg) || ((a: unknown): a is StrokeStyle => (a === undefined || isStrokeStyle(a)))(_arg.strokeStyle) )
		&& ( !("zValue" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.zValue) )
		&& ( !("fontSize" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.fontSize) );
}
export function isSceneTextItem(_arg: unknown): _arg is SceneTextItem {
	return typeof _arg === "object" && _arg !== null && "text" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.text)
		&& "pos" in _arg && isPoint2(_arg.pos);
}
export function isScrewThreadUniqueMembers(_arg: unknown): _arg is ScrewThreadUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier);
}
export function isScrewThread(_arg: unknown): _arg is ScrewThread {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "coreHoleDiameter" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.coreHoleDiameter)
		&& "minDepth" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.minDepth)
		&& "symmetricTolerance" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.symmetricTolerance);
}
export function isSegment(_arg: unknown): _arg is Segment {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && "content" in _arg && isSegmentType(_arg.type) && (() : boolean => {
	switch (_arg.type) {
		case "line" : return isLineSegment(_arg.content);
		case "arc" : return isArcSegment(_arg.content);
	}})()
;
}
export function isSettingUniqueMembers(_arg: unknown): _arg is SettingUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "key" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.key);
}
export function isSetting(_arg: unknown): _arg is Setting {
	return (typeof _arg === "object" && _arg !== null)
		&& "key" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.key)
		&& "value" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.value);
}
export function isSettingsTableDataBase(_arg: unknown): _arg is SettingsTableDataBase {
	return typeof _arg === "object" && _arg !== null && "bendFlangeSafetyDistance" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.bendFlangeSafetyDistance)
		&& "dieBendingSetupTimeDistributionEnabled" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.dieBendingSetupTimeDistributionEnabled)
		&& "tubeClampingLength" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.tubeClampingLength);
}
export function isSheetUniqueMembers(_arg: unknown): _arg is SheetUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier);
}
export function isSheet(_arg: unknown): _arg is Sheet {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "sheetMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetMaterialId)
		&& "dimX" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.dimX)
		&& "dimY" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.dimY)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "description" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.description);
}
export function isSheetBendingMaterialUniqueMembers(_arg: unknown): _arg is SheetBendingMaterialUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier);
}
export function isSheetBendingMaterial(_arg: unknown): _arg is SheetBendingMaterial {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name);
}
export function isSheetBendingMaterialMappingUniqueMembers(_arg: unknown): _arg is SheetBendingMaterialMappingUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetMaterialId);
}
export function isSheetBendingMaterialMapping(_arg: unknown): _arg is SheetBendingMaterialMapping {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetMaterialId)
		&& "sheetBendingMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetBendingMaterialId);
}
export function isSheetCuttingCalcParams(_arg: unknown): _arg is SheetCuttingCalcParams {
	return typeof _arg === "object" && _arg !== null && "sheetMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetMaterialId)
		&& "bendLineEngravingMode" in _arg && isBendLineEngravingMode(_arg.bendLineEngravingMode)
		&& "machineVMax" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.machineVMax)
		&& "machineAMax" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.machineAMax);
}
export function isSheetCuttingMaterialUniqueMembers(_arg: unknown): _arg is SheetCuttingMaterialUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier);
}
export function isSheetCuttingMaterial(_arg: unknown): _arg is SheetCuttingMaterial {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name);
}
export function isSheetCuttingMaterialMappingUniqueMembers(_arg: unknown): _arg is SheetCuttingMaterialMappingUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetMaterialId);
}
export function isSheetCuttingMaterialMapping(_arg: unknown): _arg is SheetCuttingMaterialMapping {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetMaterialId)
		&& "sheetCuttingMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetCuttingMaterialId);
}
export function isSheetCuttingMotionParametersUniqueMembers(_arg: unknown): _arg is SheetCuttingMotionParametersUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetCuttingProcessId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetCuttingProcessId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "contourArea" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.contourArea);
}
export function isSheetCuttingMotionParameters(_arg: unknown): _arg is SheetCuttingMotionParameters {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetCuttingProcessId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetCuttingProcessId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "contourArea" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.contourArea)
		&& "speed" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.speed)
		&& "acceleration" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.acceleration)
		&& "pierceTime" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.pierceTime);
}
export function isSheetCuttingProcessUniqueMembers(_arg: unknown): _arg is SheetCuttingProcessUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier);
}
export function isSheetCuttingProcess(_arg: unknown): _arg is SheetCuttingProcess {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "description" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.description);
}
export function isSheetCuttingProcessConsumableRateUniqueMembers(_arg: unknown): _arg is SheetCuttingProcessConsumableRateUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetCuttingProcessId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetCuttingProcessId)
		&& "consumableId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.consumableId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness);
}
export function isSheetCuttingProcessConsumableRate(_arg: unknown): _arg is SheetCuttingProcessConsumableRate {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetCuttingProcessId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetCuttingProcessId)
		&& "consumableId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.consumableId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "unitsPerHour" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.unitsPerHour);
}
export function isSheetCuttingProcessMappingUniqueMembers(_arg: unknown): _arg is SheetCuttingProcessMappingUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "sheetMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetMaterialId);
}
export function isSheetCuttingProcessMapping(_arg: unknown): _arg is SheetCuttingProcessMapping {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "sheetMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetMaterialId)
		&& "sheetCuttingProcessId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetCuttingProcessId);
}
export function isSheetCuttingProcessToLaserCuttingGasUniqueMembers(_arg: unknown): _arg is SheetCuttingProcessToLaserCuttingGasUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetCuttingProcessId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetCuttingProcessId);
}
export function isSheetCuttingProcessToLaserCuttingGas(_arg: unknown): _arg is SheetCuttingProcessToLaserCuttingGas {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetCuttingProcessId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetCuttingProcessId)
		&& "laserSheetCuttingGasId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.laserSheetCuttingGasId);
}
export function isSheetCuttingReplyStateContentMultipleOuterContours(_arg: unknown): _arg is SheetCuttingReplyStateContentMultipleOuterContours {
	return true;
}
export function isSheetCuttingReplyStateContentUndefinedError(_arg: unknown): _arg is SheetCuttingReplyStateContentUndefinedError {
	return true;
}
export function isSheetCuttingReplyStateContentUndetectedFeatures(_arg: unknown): _arg is SheetCuttingReplyStateContentUndetectedFeatures {
	return typeof _arg === "object" && _arg !== null && "unassignedFaceDescriptors" in _arg && ((a: unknown): a is (number)[] => Array.isArray(a) && a.find((e: unknown) : e is number => !((a: unknown): a is number => typeof a === "number")(e)) === undefined)(_arg.unassignedFaceDescriptors);
}
export function isSheetCuttingThicknessConstraintsUniqueMembers(_arg: unknown): _arg is SheetCuttingThicknessConstraintsUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetCuttingProcessId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetCuttingProcessId);
}
export function isSheetCuttingThicknessConstraints(_arg: unknown): _arg is SheetCuttingThicknessConstraints {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetCuttingProcessId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetCuttingProcessId)
		&& "minThickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.minThickness)
		&& "maxThickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.maxThickness);
}
export function isSheetFilter(_arg: unknown): _arg is SheetFilter {
	return typeof _arg === "object" && _arg !== null && "ids" in _arg && ((a: unknown): a is (string)[] => Array.isArray(a) && a.find((e: unknown) : e is string => !((a: unknown): a is string => typeof a === "string")(e)) === undefined)(_arg.ids);
}
export function isSheetMaterialUniqueMembers(_arg: unknown): _arg is SheetMaterialUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier);
}
export function isSheetMaterial(_arg: unknown): _arg is SheetMaterial {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "description" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.description);
}
export function isSheetMaterialDensityUniqueMembers(_arg: unknown): _arg is SheetMaterialDensityUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetMaterialId);
}
export function isSheetMaterialDensity(_arg: unknown): _arg is SheetMaterialDensity {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetMaterialId)
		&& "density" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.density);
}
export function isSheetMaterialScrapValueUniqueMembers(_arg: unknown): _arg is SheetMaterialScrapValueUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetMaterialId);
}
export function isSheetMaterialScrapValue(_arg: unknown): _arg is SheetMaterialScrapValue {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetMaterialId)
		&& "scrapValue" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.scrapValue);
}
export function isSheetModulusUniqueMembers(_arg: unknown): _arg is SheetModulusUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetId);
}
export function isSheetModulus(_arg: unknown): _arg is SheetModulus {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetId)
		&& "xModulus" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.xModulus)
		&& "yModulus" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.yModulus)
		&& "applyToAll" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.applyToAll);
}
export function isSheetNestingPrePartition(_arg: unknown): _arg is SheetNestingPrePartition {
	return typeof _arg === "object" && _arg !== null && "compatibleTargets" in _arg && ((a: unknown): a is (SheetNestingTarget)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetNestingTarget => !isSheetNestingTarget(e)) === undefined)(_arg.compatibleTargets)
		&& "nestorConfig" in _arg && isCamNestorConfig(_arg.nestorConfig)
		&& "nestingDistance" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.nestingDistance)
		&& ( !("sheetMaterialId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.sheetMaterialId) )
		&& ( !("sheetProcessId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.sheetProcessId) );
}
export function isSheetNestingTarget(_arg: unknown): _arg is SheetNestingTarget {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is Vertex => (typeof a === "number"))(_arg.vertex)
		&& "fixedRotations" in _arg && ((a: unknown): a is (number)[] => Array.isArray(a) && a.find((e: unknown) : e is number => !((a: unknown): a is number => typeof a === "number")(e)) === undefined)(_arg.fixedRotations)
		&& "sheetFilterSheetIds" in _arg && ((a: unknown): a is (string)[] => Array.isArray(a) && a.find((e: unknown) : e is string => !((a: unknown): a is string => typeof a === "string")(e)) === undefined)(_arg.sheetFilterSheetIds);
}
export function isSheetPriceUniqueMembers(_arg: unknown): _arg is SheetPriceUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetId);
}
export function isSheetPrice(_arg: unknown): _arg is SheetPrice {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetId)
		&& "pricePerSheet" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.pricePerSheet);
}
export function isSheetPriorityUniqueMembers(_arg: unknown): _arg is SheetPriorityUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetId);
}
export function isSheetPriority(_arg: unknown): _arg is SheetPriority {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetId)
		&& "priority" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.priority);
}
export function isSheetReplyStateContentNestingFailedError(_arg: unknown): _arg is SheetReplyStateContentNestingFailedError {
	return true;
}
export function isSheetReplyStateContentUndefinedError(_arg: unknown): _arg is SheetReplyStateContentUndefinedError {
	return true;
}
export function isSheetStockUniqueMembers(_arg: unknown): _arg is SheetStockUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetId);
}
export function isSheetStock(_arg: unknown): _arg is SheetStock {
	return (typeof _arg === "object" && _arg !== null)
		&& "sheetId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.sheetId)
		&& "count" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.count);
}
export function isSheetTappingDataEntry(_arg: unknown): _arg is SheetTappingDataEntry {
	return typeof _arg === "object" && _arg !== null && "cadFeature" in _arg && isCadFeature(_arg.cadFeature)
		&& "screwThreadId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.screwThreadId);
}
export function isSheetTappingEditorCandidate(_arg: unknown): _arg is SheetTappingEditorCandidate {
	return typeof _arg === "object" && _arg !== null && "id" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.id)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "values" in _arg && ((a: unknown): a is (SheetTappingEditorCandidateValue)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetTappingEditorCandidateValue => !isSheetTappingEditorCandidateValue(e)) === undefined)(_arg.values);
}
export function isSheetTappingEditorCandidateValue(_arg: unknown): _arg is SheetTappingEditorCandidateValue {
	return typeof _arg === "object" && _arg !== null && "id" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.id)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name);
}
export function isSheetTappingEditorSelectionEntry(_arg: unknown): _arg is SheetTappingEditorSelectionEntry {
	return typeof _arg === "object" && _arg !== null && "candidateId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.candidateId)
		&& "valueId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.valueId);
}
export function isSlArticleUpdate(_arg: unknown): _arg is SlArticleUpdate {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is SlVertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("articleUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.articleUserData) );
}
export function isSlNodeUpdate(_arg: unknown): _arg is SlNodeUpdate {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && "content" in _arg && isWorkStepType(_arg.type) && (() : boolean => {
	switch (_arg.type) {
		case "undefined" : return isSlNodeUpdateUndefined(_arg.content);
		case "sheet" : return isSlNodeUpdateSheet(_arg.content);
		case "sheetCutting" : return isSlNodeUpdateSheetCutting(_arg.content);
		case "joining" : return isSlNodeUpdateJoining(_arg.content);
		case "tubeCutting" : return isSlNodeUpdateTubeCutting(_arg.content);
		case "sheetBending" : return isSlNodeUpdateSheetBending(_arg.content);
		case "userDefined" : return isSlNodeUpdateUserDefined(_arg.content);
		case "userDefinedBase" : return isSlNodeUpdateUserDefinedBase(_arg.content);
		case "packaging" : return isSlNodeUpdatePackaging(_arg.content);
		case "transform" : return isSlNodeUpdateTransform(_arg.content);
		case "tube" : return isSlNodeUpdateTube(_arg.content);
	}})()
;
}
export function isSlNodeUpdateJoining(_arg: unknown): _arg is SlNodeUpdateJoining {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is SlVertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("processType" in _arg) || ((a: unknown): a is ProcessType => (a === undefined || isProcessType(a)))(_arg.processType) )
		&& ( !("processId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.processId) )
		&& ( !("nodeUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.nodeUserData) );
}
export function isSlNodeUpdatePackaging(_arg: unknown): _arg is SlNodeUpdatePackaging {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is SlVertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("processType" in _arg) || ((a: unknown): a is ProcessType => (a === undefined || isProcessType(a)))(_arg.processType) )
		&& ( !("processId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.processId) )
		&& ( !("nodeUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.nodeUserData) );
}
export function isSlNodeUpdateSheet(_arg: unknown): _arg is SlNodeUpdateSheet {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is SlVertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("processType" in _arg) || ((a: unknown): a is ProcessType => (a === undefined || isProcessType(a)))(_arg.processType) )
		&& ( !("processId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.processId) )
		&& ( !("nodeUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.nodeUserData) );
}
export function isSlNodeUpdateSheetBending(_arg: unknown): _arg is SlNodeUpdateSheetBending {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is SlVertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("processType" in _arg) || ((a: unknown): a is ProcessType => (a === undefined || isProcessType(a)))(_arg.processType) )
		&& ( !("processId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.processId) )
		&& ( !("nodeUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.nodeUserData) )
		&& ( !("dieChoiceMap" in _arg) || ((a: unknown): a is (DieChoiceMapEntry)[] => (a === undefined || ((a: unknown): a is (DieChoiceMapEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is DieChoiceMapEntry => !isDieChoiceMapEntry(e)) === undefined)(a)))(_arg.dieChoiceMap) )
		&& ( !("toggleUpperSide" in _arg) || ((a: unknown): a is boolean => (a === undefined || ((a: unknown): a is boolean => typeof a === "boolean")(a)))(_arg.toggleUpperSide) )
		&& ( !("correctBends" in _arg) || ((a: unknown): a is boolean => (a === undefined || ((a: unknown): a is boolean => typeof a === "boolean")(a)))(_arg.correctBends) );
}
export function isSlNodeUpdateSheetCutting(_arg: unknown): _arg is SlNodeUpdateSheetCutting {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is SlVertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("processType" in _arg) || ((a: unknown): a is ProcessType => (a === undefined || isProcessType(a)))(_arg.processType) )
		&& ( !("processId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.processId) )
		&& ( !("nodeUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.nodeUserData) )
		&& ( !("sheetThickness" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.sheetThickness) )
		&& ( !("toggleUpperSide" in _arg) || ((a: unknown): a is boolean => (a === undefined || ((a: unknown): a is boolean => typeof a === "boolean")(a)))(_arg.toggleUpperSide) );
}
export function isSlNodeUpdateTransform(_arg: unknown): _arg is SlNodeUpdateTransform {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is SlVertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("processType" in _arg) || ((a: unknown): a is ProcessType => (a === undefined || isProcessType(a)))(_arg.processType) )
		&& ( !("processId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.processId) )
		&& ( !("nodeUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.nodeUserData) );
}
export function isSlNodeUpdateTube(_arg: unknown): _arg is SlNodeUpdateTube {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is SlVertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("processType" in _arg) || ((a: unknown): a is ProcessType => (a === undefined || isProcessType(a)))(_arg.processType) )
		&& ( !("processId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.processId) )
		&& ( !("nodeUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.nodeUserData) );
}
export function isSlNodeUpdateTubeCutting(_arg: unknown): _arg is SlNodeUpdateTubeCutting {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is SlVertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("processType" in _arg) || ((a: unknown): a is ProcessType => (a === undefined || isProcessType(a)))(_arg.processType) )
		&& ( !("processId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.processId) )
		&& ( !("nodeUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.nodeUserData) );
}
export function isSlNodeUpdateUndefined(_arg: unknown): _arg is SlNodeUpdateUndefined {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is SlVertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("processType" in _arg) || ((a: unknown): a is ProcessType => (a === undefined || isProcessType(a)))(_arg.processType) )
		&& ( !("processId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.processId) )
		&& ( !("nodeUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.nodeUserData) );
}
export function isSlNodeUpdateUserDefined(_arg: unknown): _arg is SlNodeUpdateUserDefined {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is SlVertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("processType" in _arg) || ((a: unknown): a is ProcessType => (a === undefined || isProcessType(a)))(_arg.processType) )
		&& ( !("processId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.processId) )
		&& ( !("nodeUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.nodeUserData) );
}
export function isSlNodeUpdateUserDefinedBase(_arg: unknown): _arg is SlNodeUpdateUserDefinedBase {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is SlVertex => (typeof a === "number"))(_arg.vertex)
		&& ( !("processType" in _arg) || ((a: unknown): a is ProcessType => (a === undefined || isProcessType(a)))(_arg.processType) )
		&& ( !("processId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.processId) )
		&& ( !("nodeUserData" in _arg) || ((a: unknown): a is StringIndexedInterface => (a === undefined || isStringIndexedInterface(a)))(_arg.nodeUserData) );
}
export function isSlSheetNestingPrePartition(_arg: unknown): _arg is SlSheetNestingPrePartition {
	return typeof _arg === "object" && _arg !== null && "compatibleTargets" in _arg && ((a: unknown): a is (SlSheetNestingTarget)[] => Array.isArray(a) && a.find((e: unknown) : e is SlSheetNestingTarget => !isSlSheetNestingTarget(e)) === undefined)(_arg.compatibleTargets)
		&& "nestorConfig" in _arg && isCamNestorConfig(_arg.nestorConfig)
		&& "nestingDistance" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.nestingDistance)
		&& ( !("sheetMaterialId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.sheetMaterialId) )
		&& ( !("sheetProcessId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.sheetProcessId) );
}
export function isSlSheetNestingTarget(_arg: unknown): _arg is SlSheetNestingTarget {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is SlVertex => (typeof a === "number"))(_arg.vertex)
		&& "fixedRotations" in _arg && ((a: unknown): a is (number)[] => Array.isArray(a) && a.find((e: unknown) : e is number => !((a: unknown): a is number => typeof a === "number")(e)) === undefined)(_arg.fixedRotations)
		&& "sheetFilterSheetIds" in _arg && ((a: unknown): a is (string)[] => Array.isArray(a) && a.find((e: unknown) : e is string => !((a: unknown): a is string => typeof a === "string")(e)) === undefined)(_arg.sheetFilterSheetIds);
}
export function isSlTubeNestingPrePartition(_arg: unknown): _arg is SlTubeNestingPrePartition {
	return typeof _arg === "object" && _arg !== null && "targetVertex" in _arg && ((a: unknown): a is SlVertex => (typeof a === "number"))(_arg.targetVertex)
		&& "targetLength" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.targetLength)
		&& "nestingDistance" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.nestingDistance)
		&& ( !("tubeProcessId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.tubeProcessId) );
}
export function isSurchargeUniqueMembers(_arg: unknown): _arg is SurchargeUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "type" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.type)
		&& "value" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.value);
}
export function isSurcharge(_arg: unknown): _arg is Surcharge {
	return (typeof _arg === "object" && _arg !== null)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "type" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.type)
		&& "value" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.value)
		&& "description" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.description);
}
export function isTableError(_arg: unknown): _arg is TableError {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && "content" in _arg && isTableErrorType(_arg.type) && (() : boolean => {
	switch (_arg.type) {
		case "referringEntryMissing" : return isReferringEntryMissingTableError(_arg.content);
		case "referredEntryMissing" : return isReferredEntryMissingTableError(_arg.content);
		case "valueInvalid" : return isInvalidValueTableError(_arg.content);
		case "uniqueMemberCollision" : return isUniqueMemberCollisionTableError(_arg.content);
	}})()
;
}
export function isTappingTimeParametersUniqueMembers(_arg: unknown): _arg is TappingTimeParametersUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "screwThreadId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.screwThreadId);
}
export function isTappingTimeParameters(_arg: unknown): _arg is TappingTimeParameters {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "screwThreadId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.screwThreadId)
		&& "unitTimePerMm" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.unitTimePerMm);
}
export function isTransformReplyStateContentUndefinedError(_arg: unknown): _arg is TransformReplyStateContentUndefinedError {
	return true;
}
export function isTransportationCostsUniqueMembers(_arg: unknown): _arg is TransportationCostsUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier);
}
export function isTransportationCosts(_arg: unknown): _arg is TransportationCosts {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "packagingId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.packagingId)
		&& "fixedCosts" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.fixedCosts)
		&& "minCosts" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.minCosts)
		&& "kmKgFactor" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.kmKgFactor)
		&& "kmFactor" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.kmFactor)
		&& "minDistance" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.minDistance)
		&& "maxDistance" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.maxDistance);
}
export function isTubeUniqueMembers(_arg: unknown): _arg is TubeUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier);
}
export function isTube(_arg: unknown): _arg is Tube {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "tubeMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeMaterialId)
		&& "tubeProfileId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeProfileId)
		&& "tubeSpecificationId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeSpecificationId)
		&& "dimX" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.dimX);
}
export function isTubeCuttingCalcParams(_arg: unknown): _arg is TubeCuttingCalcParams {
	return typeof _arg === "object" && _arg !== null && "tubeMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeMaterialId)
		&& "machineVMax" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.machineVMax)
		&& "machineAMax" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.machineAMax);
}
export function isTubeCuttingPierceTimeUniqueMembers(_arg: unknown): _arg is TubeCuttingPierceTimeUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "tubeCuttingProcessId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeCuttingProcessId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness);
}
export function isTubeCuttingPierceTime(_arg: unknown): _arg is TubeCuttingPierceTime {
	return (typeof _arg === "object" && _arg !== null)
		&& "tubeCuttingProcessId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeCuttingProcessId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "time" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.time);
}
export function isTubeCuttingProcessUniqueMembers(_arg: unknown): _arg is TubeCuttingProcessUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier);
}
export function isTubeCuttingProcess(_arg: unknown): _arg is TubeCuttingProcess {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "description" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.description);
}
export function isTubeCuttingProcessConsumableRateUniqueMembers(_arg: unknown): _arg is TubeCuttingProcessConsumableRateUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "tubeCuttingProcessId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeCuttingProcessId)
		&& "consumableId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.consumableId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness);
}
export function isTubeCuttingProcessConsumableRate(_arg: unknown): _arg is TubeCuttingProcessConsumableRate {
	return (typeof _arg === "object" && _arg !== null)
		&& "tubeCuttingProcessId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeCuttingProcessId)
		&& "consumableId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.consumableId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "unitsPerHour" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.unitsPerHour);
}
export function isTubeCuttingProcessMappingUniqueMembers(_arg: unknown): _arg is TubeCuttingProcessMappingUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "tubeMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeMaterialId);
}
export function isTubeCuttingProcessMapping(_arg: unknown): _arg is TubeCuttingProcessMapping {
	return (typeof _arg === "object" && _arg !== null)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "tubeMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeMaterialId)
		&& "tubeCuttingProcessId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeCuttingProcessId);
}
export function isTubeCuttingReplyStateContentUndefinedError(_arg: unknown): _arg is TubeCuttingReplyStateContentUndefinedError {
	return true;
}
export function isTubeCuttingReplyStateContentUndetectedFeatures(_arg: unknown): _arg is TubeCuttingReplyStateContentUndetectedFeatures {
	return typeof _arg === "object" && _arg !== null && "unassignedFaceDescriptors" in _arg && ((a: unknown): a is (number)[] => Array.isArray(a) && a.find((e: unknown) : e is number => !((a: unknown): a is number => typeof a === "number")(e)) === undefined)(_arg.unassignedFaceDescriptors);
}
export function isTubeCuttingSpeedUniqueMembers(_arg: unknown): _arg is TubeCuttingSpeedUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "tubeCuttingProcessId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeCuttingProcessId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness);
}
export function isTubeCuttingSpeed(_arg: unknown): _arg is TubeCuttingSpeed {
	return (typeof _arg === "object" && _arg !== null)
		&& "tubeCuttingProcessId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeCuttingProcessId)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "speed" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.speed);
}
export function isTubeMaterialUniqueMembers(_arg: unknown): _arg is TubeMaterialUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier);
}
export function isTubeMaterial(_arg: unknown): _arg is TubeMaterial {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "description" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.description);
}
export function isTubeMaterialDensityUniqueMembers(_arg: unknown): _arg is TubeMaterialDensityUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "tubeMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeMaterialId);
}
export function isTubeMaterialDensity(_arg: unknown): _arg is TubeMaterialDensity {
	return (typeof _arg === "object" && _arg !== null)
		&& "tubeMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeMaterialId)
		&& "density" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.density);
}
export function isTubeMaterialScrapValueUniqueMembers(_arg: unknown): _arg is TubeMaterialScrapValueUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "tubeMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeMaterialId);
}
export function isTubeMaterialScrapValue(_arg: unknown): _arg is TubeMaterialScrapValue {
	return (typeof _arg === "object" && _arg !== null)
		&& "tubeMaterialId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeMaterialId)
		&& "scrapValue" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.scrapValue);
}
export function isTubeNestingPrePartition(_arg: unknown): _arg is TubeNestingPrePartition {
	return typeof _arg === "object" && _arg !== null && "targetVertex" in _arg && ((a: unknown): a is Vertex => (typeof a === "number"))(_arg.targetVertex)
		&& "targetLength" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.targetLength)
		&& "nestingDistance" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.nestingDistance)
		&& ( !("tubeProcessId" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.tubeProcessId) );
}
export function isTubePriceUniqueMembers(_arg: unknown): _arg is TubePriceUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "tubeId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeId);
}
export function isTubePrice(_arg: unknown): _arg is TubePrice {
	return (typeof _arg === "object" && _arg !== null)
		&& "tubeId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeId)
		&& "pricePerTube" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.pricePerTube);
}
export function isTubeProfileUniqueMembers(_arg: unknown): _arg is TubeProfileUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier);
}
export function isTubeProfile(_arg: unknown): _arg is TubeProfile {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "description" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.description)
		&& "geometryJson" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.geometryJson);
}
export function isTubeProfileGeometry(_arg: unknown): _arg is TubeProfileGeometry {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && "content" in _arg && isTubeProfileGeometryType(_arg.type) && (() : boolean => {
	switch (_arg.type) {
		case "rectangular" : return isTubeProfileGeometryRectangular(_arg.content);
		case "circular" : return isTubeProfileGeometryCircular(_arg.content);
	}})()
;
}
export function isTubeProfileGeometryCircular(_arg: unknown): _arg is TubeProfileGeometryCircular {
	return typeof _arg === "object" && _arg !== null && "outerRadius" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.outerRadius)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness);
}
export function isTubeProfileGeometryRectangular(_arg: unknown): _arg is TubeProfileGeometryRectangular {
	return typeof _arg === "object" && _arg !== null && "dimY" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.dimY)
		&& "dimZ" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.dimZ)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness);
}
export function isTubeReplyStateContentUndefinedError(_arg: unknown): _arg is TubeReplyStateContentUndefinedError {
	return true;
}
export function isTubeSpecificationUniqueMembers(_arg: unknown): _arg is TubeSpecificationUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier);
}
export function isTubeSpecification(_arg: unknown): _arg is TubeSpecification {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "description" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.description);
}
export function isTubeStockUniqueMembers(_arg: unknown): _arg is TubeStockUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "tubeId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeId);
}
export function isTubeStock(_arg: unknown): _arg is TubeStock {
	return (typeof _arg === "object" && _arg !== null)
		&& "tubeId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.tubeId)
		&& "count" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.count);
}
export function isTwoDimImportResult(_arg: unknown): _arg is TwoDimImportResult {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && "content" in _arg && isTwoDimImportResultType(_arg.type) && (() : boolean => {
	switch (_arg.type) {
		case "partInvalid" : return isTwoDimImportResultPartInvalid(_arg.content);
		case "engravingInvalid" : return isTwoDimImportResultEngravingInvalid(_arg.content);
		case "success" : return isTwoDimImportResultSuccess(_arg.content);
	}})()
;
}
export function isTwoDimImportResultEngravingInvalid(_arg: unknown): _arg is TwoDimImportResultEngravingInvalid {
	return typeof _arg === "object" && _arg !== null && "problematicPoint" in _arg && isPoint2(_arg.problematicPoint);
}
export function isTwoDimImportResultPartInvalid(_arg: unknown): _arg is TwoDimImportResultPartInvalid {
	return typeof _arg === "object" && _arg !== null && ( !("problematicPoint" in _arg) || ((a: unknown): a is Point2 => (a === undefined || isPoint2(a)))(_arg.problematicPoint) );
}
export function isTwoDimImportResultSuccess(_arg: unknown): _arg is TwoDimImportResultSuccess {
	return typeof _arg === "object" && _arg !== null && "twoDimRep" in _arg && ((a: unknown): a is TwoDimRepresentation => (typeof a === "object" && a !== null))(_arg.twoDimRep);
}
export function isUiJoiningRepresentation(_arg: unknown): _arg is UiJoiningRepresentation {
	return typeof _arg === "object" && _arg !== null && "joiningSteps" in _arg && ((a: unknown): a is (UiJoiningStepRepresentation)[] => Array.isArray(a) && a.find((e: unknown) : e is UiJoiningStepRepresentation => !isUiJoiningStepRepresentation(e)) === undefined)(_arg.joiningSteps);
}
export function isUiJoiningStepEntryRepresentation(_arg: unknown): _arg is UiJoiningStepEntryRepresentation {
	return typeof _arg === "object" && _arg !== null && "assembly" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.assembly)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier);
}
export function isUiJoiningStepRepresentation(_arg: unknown): _arg is UiJoiningStepRepresentation {
	return typeof _arg === "object" && _arg !== null && "entries" in _arg && ((a: unknown): a is (UiJoiningStepEntryRepresentation)[] => Array.isArray(a) && a.find((e: unknown) : e is UiJoiningStepEntryRepresentation => !isUiJoiningStepEntryRepresentation(e)) === undefined)(_arg.entries)
		&& ( !("cameraOrientation" in _arg) || ((a: unknown): a is CameraOrientation3 => (a === undefined || isCameraOrientation3(a)))(_arg.cameraOrientation) )
		&& "comment" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.comment);
}
export function isUndefinedReplyStateContentUndefinedError(_arg: unknown): _arg is UndefinedReplyStateContentUndefinedError {
	return true;
}
export function isUniqueMemberCollisionTableError(_arg: unknown): _arg is UniqueMemberCollisionTableError {
	return typeof _arg === "object" && _arg !== null && "affectedRowType" in _arg && isTableType(_arg.affectedRowType)
		&& "affectedRowIndex" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.affectedRowIndex)
		&& "affectedColumnIndex" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.affectedColumnIndex)
		&& "relatedRowIndex" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.relatedRowIndex);
}
export function isUnused(_arg: unknown): _arg is Unused {
	return true;
}
export function isUpperDieUniqueMembers(_arg: unknown): _arg is UpperDieUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier);
}
export function isUpperDie(_arg: unknown): _arg is UpperDie {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "upperDieGroupId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.upperDieGroupId)
		&& "description" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.description);
}
export function isUpperDieGroupUniqueMembers(_arg: unknown): _arg is UpperDieGroupUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier);
}
export function isUpperDieGroup(_arg: unknown): _arg is UpperDieGroup {
	return (typeof _arg === "object" && _arg !== null)
		&& "identifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.identifier)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "exportIdentifier" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.exportIdentifier)
		&& "radius" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.radius);
}
export function isUpperDieUnitUniqueMembers(_arg: unknown): _arg is UpperDieUnitUniqueMembers {
	return (typeof _arg === "object" && _arg !== null)
		&& "upperDieId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.upperDieId)
		&& "dimX" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.dimX);
}
export function isUpperDieUnit(_arg: unknown): _arg is UpperDieUnit {
	return (typeof _arg === "object" && _arg !== null)
		&& "upperDieId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.upperDieId)
		&& "dimX" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.dimX)
		&& "multiplicity" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.multiplicity);
}
export function isUserDataConfig(_arg: unknown): _arg is UserDataConfig {
	return typeof _arg === "object" && _arg !== null && "entries" in _arg && ((a: unknown): a is (UserDatumConfig)[] => Array.isArray(a) && a.find((e: unknown) : e is UserDatumConfig => !isUserDatumConfig(e)) === undefined)(_arg.entries);
}
export function isUserDatumBooleanConfig(_arg: unknown): _arg is UserDatumBooleanConfig {
	return typeof _arg === "object" && _arg !== null && "id" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.id)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name);
}
export function isUserDatumConfig(_arg: unknown): _arg is UserDatumConfig {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && "content" in _arg && isUserDatumType(_arg.type) && (() : boolean => {
	switch (_arg.type) {
		case "string" : return isUserDatumStringConfig(_arg.content);
		case "number" : return isUserDatumNumberConfig(_arg.content);
		case "boolean" : return isUserDatumBooleanConfig(_arg.content);
		case "enumeration" : return isUserDatumEnumConfig(_arg.content);
	}})()
;
}
export function isUserDatumEnumConfig(_arg: unknown): _arg is UserDatumEnumConfig {
	return typeof _arg === "object" && _arg !== null && "id" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.id)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "items" in _arg && ((a: unknown): a is (UserDatumEnumConfigItem)[] => Array.isArray(a) && a.find((e: unknown) : e is UserDatumEnumConfigItem => !isUserDatumEnumConfigItem(e)) === undefined)(_arg.items);
}
export function isUserDatumEnumConfigItem(_arg: unknown): _arg is UserDatumEnumConfigItem {
	return typeof _arg === "object" && _arg !== null && "id" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.id)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name);
}
export function isUserDatumNumberConfig(_arg: unknown): _arg is UserDatumNumberConfig {
	return typeof _arg === "object" && _arg !== null && "id" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.id)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "min" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.min)
		&& "max" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.max)
		&& "decimals" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.decimals);
}
export function isUserDatumStringConfig(_arg: unknown): _arg is UserDatumStringConfig {
	return typeof _arg === "object" && _arg !== null && "id" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.id)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name);
}
export function isUserDefinedBaseReplyStateContentUndefinedError(_arg: unknown): _arg is UserDefinedBaseReplyStateContentUndefinedError {
	return true;
}
export function isUserDefinedReplyStateContentUndefinedError(_arg: unknown): _arg is UserDefinedReplyStateContentUndefinedError {
	return true;
}
export function isUserDefinedScalePrice(_arg: unknown): _arg is UserDefinedScalePrice {
	return typeof _arg === "object" && _arg !== null && "scaleValue" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.scaleValue)
		&& "price" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.price);
}
export function isVector2(_arg: unknown): _arg is Vector2 {
	return typeof _arg === "object" && _arg !== null && "entries" in _arg && ((a: unknown): a is [ (number), (number), ] => {
	const m = [ 
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),];
	return Array.isArray(a) && a.length === m.length && m.every((t, index) => t(a[index]));
})(_arg.entries);
}
export function isVector3(_arg: unknown): _arg is Vector3 {
	return typeof _arg === "object" && _arg !== null && "entries" in _arg && ((a: unknown): a is [ (number), (number), (number), ] => {
	const m = [ 
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),];
	return Array.isArray(a) && a.length === m.length && m.every((t, index) => t(a[index]));
})(_arg.entries);
}
export function isVector4(_arg: unknown): _arg is Vector4 {
	return typeof _arg === "object" && _arg !== null && "entries" in _arg && ((a: unknown): a is [ (number), (number), (number), (number), ] => {
	const m = [ 
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),];
	return Array.isArray(a) && a.length === m.length && m.every((t, index) => t(a[index]));
})(_arg.entries);
}
export function isVertexWithArticleAttributes(_arg: unknown): _arg is VertexWithArticleAttributes {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is Vertex => (typeof a === "number"))(_arg.vertex)
		&& "articleAttributes" in _arg && isArticleAttributes(_arg.articleAttributes);
}
export function isVertexWithMultiplicity(_arg: unknown): _arg is VertexWithMultiplicity {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is Vertex => (typeof a === "number"))(_arg.vertex)
		&& "multiplicity" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.multiplicity);
}
export function isVertexWithProcessTypeData(_arg: unknown): _arg is VertexWithProcessTypeData {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is Vertex => (typeof a === "number"))(_arg.vertex)
		&& "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "forced" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.forced);
}
export function isVertexWithSheetThickness(_arg: unknown): _arg is VertexWithSheetThickness {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is Vertex => (typeof a === "number"))(_arg.vertex)
		&& "sheetThickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.sheetThickness);
}
export function isVertexWithUserData(_arg: unknown): _arg is VertexWithUserData {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is Vertex => (typeof a === "number"))(_arg.vertex)
		&& "userData" in _arg && isStringIndexedInterface(_arg.userData);
}
export function isVertexWithWorkStepType(_arg: unknown): _arg is VertexWithWorkStepType {
	return typeof _arg === "object" && _arg !== null && "vertex" in _arg && ((a: unknown): a is Vertex => (typeof a === "number"))(_arg.vertex)
		&& "workStepType" in _arg && isWorkStepType(_arg.workStepType);
}
export function isViolatedNodeConstraint(_arg: unknown): _arg is ViolatedNodeConstraint {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && "content" in _arg && isNodeConstraint(_arg.type) && (() : boolean => {
	switch (_arg.type) {
		case "bendDeductionThicknessInBounds" : return isViolatedNodeConstraintBendDeductionThicknessInBounds(_arg.content);
		case "bendDiesAssigned" : return isViolatedNodeConstraintBendDiesAssigned(_arg.content);
		case "bendFlangeLengthInBounds" : return isViolatedNodeConstraintBendFlangeLengthInBounds(_arg.content);
		case "bendLineLengthInBounds" : return isViolatedNodeConstraintBendLineLengthInBounds(_arg.content);
		case "contourBendZoneUnaffected" : return isViolatedNodeConstraintContourBendZoneUnaffected(_arg.content);
		case "sheetCuttingContourSizeInBounds" : return isViolatedNodeConstraintSheetCuttingContourSizeInBounds(_arg.content);
		case "editingStateOk" : return isViolatedNodeConstraintEditingStateOk(_arg.content);
		case "dimensionsInBounds" : return isViolatedNodeConstraintDimensionsInBounds(_arg.content);
		case "materialsCompatible" : return isViolatedNodeConstraintMaterialsCompatible(_arg.content);
		case "sheetCuttingThicknessInBounds" : return isViolatedNodeConstraintSheetCuttingThicknessInBounds(_arg.content);
		case "tubeCuttingProfileSupported" : return isViolatedNodeConstraintTubeCuttingProfileSupported(_arg.content);
		case "semimanufacturedAvailable" : return isViolatedNodeConstraintSemimanufacturedAvailable(_arg.content);
		case "sheetCuttingProcessCompatible" : return isViolatedNodeConstraintSheetCuttingProcessCompatible(_arg.content);
		case "tubeCuttingProcessCompatible" : return isViolatedNodeConstraintTubeCuttingProcessCompatible(_arg.content);
		case "tubeDetectionLicensed" : return isViolatedNodeConstraintTubeDetectionLicensed(_arg.content);
		case "unfoldingSimple" : return isViolatedNodeConstraintUnfoldingSimpl(_arg.content);
	}})()
;
}
export function isViolatedNodeConstraintBendDeductionThicknessInBounds(_arg: unknown): _arg is ViolatedNodeConstraintBendDeductionThicknessInBounds {
	return true;
}
export function isViolatedNodeConstraintBendDiesAssigned(_arg: unknown): _arg is ViolatedNodeConstraintBendDiesAssigned {
	return true;
}
export function isViolatedNodeConstraintBendFlangeLengthInBounds(_arg: unknown): _arg is ViolatedNodeConstraintBendFlangeLengthInBounds {
	return typeof _arg === "object" && _arg !== null && "bendDescriptor" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.bendDescriptor)
		&& "flangeLength0" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.flangeLength0)
		&& "flangeLength1" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.flangeLength1)
		&& "requiredOpeningWidth" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.requiredOpeningWidth)
		&& "actualOpeningWidth" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.actualOpeningWidth);
}
export function isViolatedNodeConstraintBendLineLengthInBounds(_arg: unknown): _arg is ViolatedNodeConstraintBendLineLengthInBounds {
	return typeof _arg === "object" && _arg !== null && "bendDescriptor" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.bendDescriptor)
		&& "actualNetLength" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.actualNetLength)
		&& "maxAllowedNetLength" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.maxAllowedNetLength);
}
export function isViolatedNodeConstraintContourBendZoneUnaffected(_arg: unknown): _arg is ViolatedNodeConstraintContourBendZoneUnaffected {
	return true;
}
export function isViolatedNodeConstraintDimensionsInBounds(_arg: unknown): _arg is ViolatedNodeConstraintDimensionsInBounds {
	return typeof _arg === "object" && _arg !== null && "actualDimensions" in _arg && ((a: unknown): a is [ (number), (number), (number), ] => {
	const m = [ 
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),];
	return Array.isArray(a) && a.length === m.length && m.every((t, index) => t(a[index]));
})(_arg.actualDimensions)
		&& ( !("violatedLowerConstaints" in _arg) || ((a: unknown): a is [ (number), (number), (number), ] => (a === undefined || ((a: unknown): a is [ (number), (number), (number), ] => {
	const m = [ 
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),];
	return Array.isArray(a) && a.length === m.length && m.every((t, index) => t(a[index]));
})(a)))(_arg.violatedLowerConstaints) )
		&& ( !("violatedUpperConstaints" in _arg) || ((a: unknown): a is [ (number), (number), (number), ] => (a === undefined || ((a: unknown): a is [ (number), (number), (number), ] => {
	const m = [ 
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),
		((a: unknown): a is number => typeof a === "number"),];
	return Array.isArray(a) && a.length === m.length && m.every((t, index) => t(a[index]));
})(a)))(_arg.violatedUpperConstaints) );
}
export function isViolatedNodeConstraintEditingStateOk(_arg: unknown): _arg is ViolatedNodeConstraintEditingStateOk {
	return typeof _arg === "object" && _arg !== null && "dataMissing" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.dataMissing)
		&& "dataInvalid" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.dataInvalid);
}
export function isViolatedNodeConstraintMaterialsCompatible(_arg: unknown): _arg is ViolatedNodeConstraintMaterialsCompatible {
	return typeof _arg === "object" && _arg !== null && "incompatibleSheetMaterialIds" in _arg && ((a: unknown): a is (string)[] => Array.isArray(a) && a.find((e: unknown) : e is string => !((a: unknown): a is string => typeof a === "string")(e)) === undefined)(_arg.incompatibleSheetMaterialIds)
		&& "incompatibleTubeMaterialIds" in _arg && ((a: unknown): a is (string)[] => Array.isArray(a) && a.find((e: unknown) : e is string => !((a: unknown): a is string => typeof a === "string")(e)) === undefined)(_arg.incompatibleTubeMaterialIds)
		&& "incompatiblePurchasePartMaterialIds" in _arg && ((a: unknown): a is (string)[] => Array.isArray(a) && a.find((e: unknown) : e is string => !((a: unknown): a is string => typeof a === "string")(e)) === undefined)(_arg.incompatiblePurchasePartMaterialIds);
}
export function isViolatedNodeConstraintSemimanufacturedAvailable(_arg: unknown): _arg is ViolatedNodeConstraintSemimanufacturedAvailable {
	return true;
}
export function isViolatedNodeConstraintSheetCuttingContourSizeInBounds(_arg: unknown): _arg is ViolatedNodeConstraintSheetCuttingContourSizeInBounds {
	return true;
}
export function isViolatedNodeConstraintSheetCuttingProcessCompatible(_arg: unknown): _arg is ViolatedNodeConstraintSheetCuttingProcessCompatible {
	return true;
}
export function isViolatedNodeConstraintSheetCuttingThicknessInBounds(_arg: unknown): _arg is ViolatedNodeConstraintSheetCuttingThicknessInBounds {
	return typeof _arg === "object" && _arg !== null && "minThickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.minThickness)
		&& "maxThickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.maxThickness);
}
export function isViolatedNodeConstraintTubeCuttingProcessCompatible(_arg: unknown): _arg is ViolatedNodeConstraintTubeCuttingProcessCompatible {
	return true;
}
export function isViolatedNodeConstraintTubeCuttingProfileSupported(_arg: unknown): _arg is ViolatedNodeConstraintTubeCuttingProfileSupported {
	return true;
}
export function isViolatedNodeConstraintTubeDetectionLicensed(_arg: unknown): _arg is ViolatedNodeConstraintTubeDetectionLicensed {
	return true;
}
export function isViolatedNodeConstraintUnfoldingSimpl(_arg: unknown): _arg is ViolatedNodeConstraintUnfoldingSimpl {
	return true;
}
export function isWidgetConfig(_arg: unknown): _arg is WidgetConfig {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && "content" in _arg && isWidgetType(_arg.type) && (() : boolean => {
	switch (_arg.type) {
		case "assemblyView" : return isWidgetConfigAssemblyView(_arg.content);
		case "attachmentEditor" : return isWidgetConfigAttachmentEditor(_arg.content);
		case "bendingToolEditor" : return isWidgetConfigBendingToolEditor(_arg.content);
		case "bulkEditor" : return isWidgetConfigBulkEditor(_arg.content);
		case "calcParamEditor" : return isWidgetConfigCalcParamEditor(_arg.content);
		case "fileDialog" : return isWidgetConfigFileDialog(_arg.content);
		case "formEditor" : return isWidgetConfigFormEditor(_arg.content);
		case "geometrySelector" : return isWidgetConfigGeometrySelector(_arg.content);
		case "geometryColorSelector" : return isWidgetConfigGeometryColorSelector(_arg.content);
		case "joiningSequenceEditor" : return isWidgetConfigJoiningSequenceEditor(_arg.content);
		case "layeredImportDialog" : return isWidgetConfigLayeredImportDialog(_arg.content);
		case "messageBox" : return isWidgetConfigMessageBox(_arg.content);
		case "processSelector" : return isWidgetConfigProcessSelector(_arg.content);
		case "sheetFilterEditor" : return isWidgetConfigSheetFilterEditor(_arg.content);
		case "sheetTappingEditor" : return isWidgetConfigSheetTappingEditor(_arg.content);
		case "userDataConfigEditor" : return isWidgetConfigUserDataConfigEditor(_arg.content);
	}})()
;
}
export function isWidgetConfigAssemblyView(_arg: unknown): _arg is WidgetConfigAssemblyView {
	return typeof _arg === "object" && _arg !== null && "assembly" in _arg && ((a: unknown): a is Assembly => (typeof a === "object" && a !== null))(_arg.assembly);
}
export function isWidgetConfigAttachmentEditor(_arg: unknown): _arg is WidgetConfigAttachmentEditor {
	return typeof _arg === "object" && _arg !== null && "initialValue" in _arg && isWidgetResultAttachmentEditor(_arg.initialValue);
}
export function isWidgetConfigBendingToolEditor(_arg: unknown): _arg is WidgetConfigBendingToolEditor {
	return typeof _arg === "object" && _arg !== null && "input" in _arg && ((a: unknown): a is (BendingToolEditorInputEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is BendingToolEditorInputEntry => !isBendingToolEditorInputEntry(e)) === undefined)(_arg.input)
		&& "initialValue" in _arg && isWidgetResultBendingToolEditor(_arg.initialValue);
}
export function isWidgetConfigBulkEditor(_arg: unknown): _arg is WidgetConfigBulkEditor {
	return typeof _arg === "object" && _arg !== null && "columnConfigs" in _arg && ((a: unknown): a is (BulkEditorColumnConfig)[] => Array.isArray(a) && a.find((e: unknown) : e is BulkEditorColumnConfig => !isBulkEditorColumnConfig(e)) === undefined)(_arg.columnConfigs)
		&& "rowConfigs" in _arg && ((a: unknown): a is ((BulkEditorCellConfig)[])[] => Array.isArray(a) && a.find((e: unknown) : e is (BulkEditorCellConfig)[] => !((a: unknown): a is (BulkEditorCellConfig)[] => Array.isArray(a) && a.find((e: unknown) : e is BulkEditorCellConfig => !isBulkEditorCellConfig(e)) === undefined)(e)) === undefined)(_arg.rowConfigs)
		&& ( !("widgetState" in _arg) || ((a: unknown): a is string => (a === undefined || ((a: unknown): a is string => typeof a === "string")(a)))(_arg.widgetState) );
}
export function isWidgetConfigCalcParamEditor(_arg: unknown): _arg is WidgetConfigCalcParamEditor {
	return typeof _arg === "object" && _arg !== null && "initialValue" in _arg && isWidgetResultCalcParamEditor(_arg.initialValue)
		&& ( !("materialCostsPerPieceSuggestion" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.materialCostsPerPieceSuggestion) )
		&& ( !("setupTimeSuggestion" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.setupTimeSuggestion) )
		&& ( !("unitTimePerPieceSuggestion" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.unitTimePerPieceSuggestion) );
}
export function isWidgetConfigFileDialog(_arg: unknown): _arg is WidgetConfigFileDialog {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && isFileDialogType(_arg.type)
		&& "title" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.title)
		&& "defaultPath" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.defaultPath)
		&& "filter" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.filter);
}
export function isWidgetConfigFormEditor(_arg: unknown): _arg is WidgetConfigFormEditor {
	return typeof _arg === "object" && _arg !== null && "rows" in _arg && ((a: unknown): a is (FormRowConfig)[] => Array.isArray(a) && a.find((e: unknown) : e is FormRowConfig => !isFormRowConfig(e)) === undefined)(_arg.rows);
}
export function isWidgetConfigGeometryColorSelector(_arg: unknown): _arg is WidgetConfigGeometryColorSelector {
	return typeof _arg === "object" && _arg !== null && "flags" in _arg && isGeometrySelectorConfigFlags(_arg.flags)
		&& "assembly" in _arg && ((a: unknown): a is Assembly => (typeof a === "object" && a !== null))(_arg.assembly)
		&& "formEditorConfig" in _arg && isWidgetConfigFormEditor(_arg.formEditorConfig)
		&& "colorDataKey" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.colorDataKey)
		&& "initialValue" in _arg && isWidgetResultGeometryColorSelector(_arg.initialValue);
}
export function isWidgetConfigGeometrySelector(_arg: unknown): _arg is WidgetConfigGeometrySelector {
	return typeof _arg === "object" && _arg !== null && "flags" in _arg && isGeometrySelectorConfigFlags(_arg.flags)
		&& "assembly" in _arg && ((a: unknown): a is Assembly => (typeof a === "object" && a !== null))(_arg.assembly)
		&& "formEditorConfig" in _arg && isWidgetConfigFormEditor(_arg.formEditorConfig)
		&& "initialValue" in _arg && isWidgetResultGeometrySelector(_arg.initialValue);
}
export function isWidgetConfigJoiningSequenceEditor(_arg: unknown): _arg is WidgetConfigJoiningSequenceEditor {
	return typeof _arg === "object" && _arg !== null && "articleName" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.articleName)
		&& "assemblyMap" in _arg && ((a: unknown): a is (AssemblyMapEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is AssemblyMapEntry => !isAssemblyMapEntry(e)) === undefined)(_arg.assemblyMap)
		&& "initialValue" in _arg && isWidgetResultJoiningSequenceEditor(_arg.initialValue);
}
export function isWidgetConfigLayeredImportDialog(_arg: unknown): _arg is WidgetConfigLayeredImportDialog {
	return typeof _arg === "object" && _arg !== null && "title" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.title)
		&& "layered" in _arg && ((a: unknown): a is Layered => (typeof a === "object" && a !== null))(_arg.layered)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness)
		&& "name" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.name)
		&& "material" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.material);
}
export function isWidgetConfigMessageBox(_arg: unknown): _arg is WidgetConfigMessageBox {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && isMessageBoxType(_arg.type)
		&& "title" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.title)
		&& "text" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.text);
}
export function isWidgetConfigProcessSelector(_arg: unknown): _arg is WidgetConfigProcessSelector {
	return typeof _arg === "object" && _arg !== null && "processTable" in _arg && ((a: unknown): a is (Process)[] => Array.isArray(a) && a.find((e: unknown) : e is Process => !isProcess(e)) === undefined)(_arg.processTable)
		&& "supportedWorkStepTypes" in _arg && ((a: unknown): a is (WorkStepType)[] => Array.isArray(a) && a.find((e: unknown) : e is WorkStepType => !isWorkStepType(e)) === undefined)(_arg.supportedWorkStepTypes)
		&& "initialValue" in _arg && isWidgetResultProcessSelector(_arg.initialValue);
}
export function isWidgetConfigSheetFilterEditor(_arg: unknown): _arg is WidgetConfigSheetFilterEditor {
	return typeof _arg === "object" && _arg !== null && "sheets" in _arg && ((a: unknown): a is (string)[] => Array.isArray(a) && a.find((e: unknown) : e is string => !((a: unknown): a is string => typeof a === "string")(e)) === undefined)(_arg.sheets)
		&& "initialValue" in _arg && isWidgetResultSheetFilterEditor(_arg.initialValue);
}
export function isWidgetConfigSheetTappingEditor(_arg: unknown): _arg is WidgetConfigSheetTappingEditor {
	return typeof _arg === "object" && _arg !== null && "base64Scene" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.base64Scene)
		&& "candidates" in _arg && ((a: unknown): a is (SheetTappingEditorCandidate)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetTappingEditorCandidate => !isSheetTappingEditorCandidate(e)) === undefined)(_arg.candidates)
		&& "initialValue" in _arg && isWidgetResultSheetTappingEditor(_arg.initialValue);
}
export function isWidgetConfigUserDataConfigEditor(_arg: unknown): _arg is WidgetConfigUserDataConfigEditor {
	return typeof _arg === "object" && _arg !== null && "initialValue" in _arg && isWidgetResultUserDataConfigEditor(_arg.initialValue);
}
export function isWidgetResult(_arg: unknown): _arg is WidgetResult {
	return typeof _arg === "object" && _arg !== null && "type" in _arg && "content" in _arg && isWidgetType(_arg.type) && (() : boolean => {
	switch (_arg.type) {
		case "assemblyView" : return isWidgetResultAssemblyView(_arg.content);
		case "attachmentEditor" : return isWidgetResultAttachmentEditor(_arg.content);
		case "bendingToolEditor" : return isWidgetResultBendingToolEditor(_arg.content);
		case "bulkEditor" : return isWidgetResultBulkEditor(_arg.content);
		case "calcParamEditor" : return isWidgetResultCalcParamEditor(_arg.content);
		case "fileDialog" : return isWidgetResultFileDialog(_arg.content);
		case "formEditor" : return isWidgetResultFormEditor(_arg.content);
		case "geometrySelector" : return isWidgetResultGeometrySelector(_arg.content);
		case "geometryColorSelector" : return isWidgetResultGeometryColorSelector(_arg.content);
		case "joiningSequenceEditor" : return isWidgetResultJoiningSequenceEditor(_arg.content);
		case "layeredImportDialog" : return isWidgetResultLayeredImportDialog(_arg.content);
		case "messageBox" : return isWidgetResultMessageBox(_arg.content);
		case "processSelector" : return isWidgetResultProcessSelector(_arg.content);
		case "sheetFilterEditor" : return isWidgetResultSheetFilterEditor(_arg.content);
		case "sheetTappingEditor" : return isWidgetResultSheetTappingEditor(_arg.content);
		case "userDataConfigEditor" : return isWidgetResultUserDataConfigEditor(_arg.content);
	}})()
;
}
export function isWidgetResultAssemblyView(_arg: unknown): _arg is WidgetResultAssemblyView {
	return true;
}
export function isWidgetResultAttachmentEditor(_arg: unknown): _arg is WidgetResultAttachmentEditor {
	return typeof _arg === "object" && _arg !== null && "attachments" in _arg && ((a: unknown): a is (Attachment)[] => Array.isArray(a) && a.find((e: unknown) : e is Attachment => !isAttachment(e)) === undefined)(_arg.attachments);
}
export function isWidgetResultBendingToolEditor(_arg: unknown): _arg is WidgetResultBendingToolEditor {
	return typeof _arg === "object" && _arg !== null && "dieChoiceMap" in _arg && ((a: unknown): a is (DieChoiceMapEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is DieChoiceMapEntry => !isDieChoiceMapEntry(e)) === undefined)(_arg.dieChoiceMap);
}
export function isWidgetResultBulkEditor(_arg: unknown): _arg is WidgetResultBulkEditor {
	return typeof _arg === "object" && _arg !== null && ( !("rows" in _arg) || ((a: unknown): a is (StringIndexedInterface)[] => (a === undefined || ((a: unknown): a is (StringIndexedInterface)[] => Array.isArray(a) && a.find((e: unknown) : e is StringIndexedInterface => !isStringIndexedInterface(e)) === undefined)(a)))(_arg.rows) )
		&& "widgetState" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.widgetState);
}
export function isWidgetResultCalcParamEditor(_arg: unknown): _arg is WidgetResultCalcParamEditor {
	return typeof _arg === "object" && _arg !== null && ( !("materialCostsPerPiece" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.materialCostsPerPiece) )
		&& ( !("setupTime" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.setupTime) )
		&& ( !("unitTimePerPiece" in _arg) || ((a: unknown): a is number => (a === undefined || ((a: unknown): a is number => typeof a === "number")(a)))(_arg.unitTimePerPiece) )
		&& "userDefinedScalePrices" in _arg && ((a: unknown): a is (UserDefinedScalePrice)[] => Array.isArray(a) && a.find((e: unknown) : e is UserDefinedScalePrice => !isUserDefinedScalePrice(e)) === undefined)(_arg.userDefinedScalePrices);
}
export function isWidgetResultFileDialog(_arg: unknown): _arg is WidgetResultFileDialog {
	return typeof _arg === "object" && _arg !== null && "paths" in _arg && ((a: unknown): a is (string)[] => Array.isArray(a) && a.find((e: unknown) : e is string => !((a: unknown): a is string => typeof a === "string")(e)) === undefined)(_arg.paths);
}
export function isWidgetResultFormEditor(_arg: unknown): _arg is WidgetResultFormEditor {
	return typeof _arg === "object" && _arg !== null && "values" in _arg && isStringIndexedInterface(_arg.values);
}
export function isWidgetResultGeometryColorSelector(_arg: unknown): _arg is WidgetResultGeometryColorSelector {
	return typeof _arg === "object" && _arg !== null && "selection" in _arg && ((a: unknown): a is (GeometrySelectionEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is GeometrySelectionEntry => !isGeometrySelectionEntry(e)) === undefined)(_arg.selection);
}
export function isWidgetResultGeometrySelector(_arg: unknown): _arg is WidgetResultGeometrySelector {
	return typeof _arg === "object" && _arg !== null && "selection" in _arg && ((a: unknown): a is (GeometrySelectionEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is GeometrySelectionEntry => !isGeometrySelectionEntry(e)) === undefined)(_arg.selection);
}
export function isWidgetResultJoiningSequenceEditor(_arg: unknown): _arg is WidgetResultJoiningSequenceEditor {
	return typeof _arg === "object" && _arg !== null && "joining" in _arg && isUiJoiningRepresentation(_arg.joining);
}
export function isWidgetResultLayeredImportDialog(_arg: unknown): _arg is WidgetResultLayeredImportDialog {
	return typeof _arg === "object" && _arg !== null && "twoDimRep" in _arg && ((a: unknown): a is TwoDimRepresentation => (typeof a === "object" && a !== null))(_arg.twoDimRep)
		&& "thickness" in _arg && ((a: unknown): a is number => typeof a === "number")(_arg.thickness);
}
export function isWidgetResultMessageBox(_arg: unknown): _arg is WidgetResultMessageBox {
	return typeof _arg === "object" && _arg !== null && "accepted" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.accepted);
}
export function isWidgetResultProcessSelector(_arg: unknown): _arg is WidgetResultProcessSelector {
	return typeof _arg === "object" && _arg !== null && "processId" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.processId)
		&& "forced" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.forced);
}
export function isWidgetResultSheetFilterEditor(_arg: unknown): _arg is WidgetResultSheetFilterEditor {
	return typeof _arg === "object" && _arg !== null && "filter" in _arg && isSheetFilter(_arg.filter);
}
export function isWidgetResultSheetTappingEditor(_arg: unknown): _arg is WidgetResultSheetTappingEditor {
	return typeof _arg === "object" && _arg !== null && "selection" in _arg && ((a: unknown): a is (SheetTappingEditorSelectionEntry)[] => Array.isArray(a) && a.find((e: unknown) : e is SheetTappingEditorSelectionEntry => !isSheetTappingEditorSelectionEntry(e)) === undefined)(_arg.selection);
}
export function isWidgetResultUserDataConfigEditor(_arg: unknown): _arg is WidgetResultUserDataConfigEditor {
	return typeof _arg === "object" && _arg !== null && "configJson" in _arg && ((a: unknown): a is string => typeof a === "string")(_arg.configJson);
}
export function isWorkStepTypeChangeResult(_arg: unknown): _arg is WorkStepTypeChangeResult {
	return typeof _arg === "object" && _arg !== null && "success" in _arg && ((a: unknown): a is boolean => typeof a === "boolean")(_arg.success)
		&& "preGraph" in _arg && ((a: unknown): a is PreDocumentGraph => (typeof a === "object" && a !== null))(_arg.preGraph)
		&& "changedVertices" in _arg && ((a: unknown): a is (SlVertex)[] => Array.isArray(a) && a.find((e: unknown) : e is SlVertex => !((a: unknown): a is SlVertex => (typeof a === "number"))(e)) === undefined)(_arg.changedVertices);
}
export const SheetMaterialUniqueMembersKey = [
	"identifier",
] as const;
type SheetMaterialUniqueMembersKeyTuple = typeof SheetMaterialUniqueMembersKey;
export type SheetMaterialUniqueMembersKey = SheetMaterialUniqueMembersKeyTuple[number];
export const SheetMaterialDensityUniqueMembersKey = [
	"sheetMaterialId",
] as const;
type SheetMaterialDensityUniqueMembersKeyTuple = typeof SheetMaterialDensityUniqueMembersKey;
export type SheetMaterialDensityUniqueMembersKey = SheetMaterialDensityUniqueMembersKeyTuple[number];
export const SheetCuttingMaterialMappingUniqueMembersKey = [
	"sheetMaterialId",
] as const;
type SheetCuttingMaterialMappingUniqueMembersKeyTuple = typeof SheetCuttingMaterialMappingUniqueMembersKey;
export type SheetCuttingMaterialMappingUniqueMembersKey = SheetCuttingMaterialMappingUniqueMembersKeyTuple[number];
export const SheetBendingMaterialMappingUniqueMembersKey = [
	"sheetMaterialId",
] as const;
type SheetBendingMaterialMappingUniqueMembersKeyTuple = typeof SheetBendingMaterialMappingUniqueMembersKey;
export type SheetBendingMaterialMappingUniqueMembersKey = SheetBendingMaterialMappingUniqueMembersKeyTuple[number];
export const BendTimeUniqueMembersKey = [
	"mass",
] as const;
type BendTimeUniqueMembersKeyTuple = typeof BendTimeUniqueMembersKey;
export type BendTimeUniqueMembersKey = BendTimeUniqueMembersKeyTuple[number];
export const BendTimeParametersUniqueMembersKey = [
	"sheetBendingMaterialId",
	"thickness",
	"bendLineNetLength",
] as const;
type BendTimeParametersUniqueMembersKeyTuple = typeof BendTimeParametersUniqueMembersKey;
export type BendTimeParametersUniqueMembersKey = BendTimeParametersUniqueMembersKeyTuple[number];
export const BendRateParametersUniqueMembersKey = [
	"sheetBendingMaterialId",
	"thickness",
	"bendLineNetLength",
] as const;
type BendRateParametersUniqueMembersKeyTuple = typeof BendRateParametersUniqueMembersKey;
export type BendRateParametersUniqueMembersKey = BendRateParametersUniqueMembersKeyTuple[number];
export const BendLineConstraintUniqueMembersKey = [
	"sheetBendingMaterialId",
	"thickness",
] as const;
type BendLineConstraintUniqueMembersKeyTuple = typeof BendLineConstraintUniqueMembersKey;
export type BendLineConstraintUniqueMembersKey = BendLineConstraintUniqueMembersKeyTuple[number];
export const LaserSheetCuttingGasUniqueMembersKey = [
	"identifier",
] as const;
type LaserSheetCuttingGasUniqueMembersKeyTuple = typeof LaserSheetCuttingGasUniqueMembersKey;
export type LaserSheetCuttingGasUniqueMembersKey = LaserSheetCuttingGasUniqueMembersKeyTuple[number];
export const LaserSheetCuttingSpeedUniqueMembersKey = [
	"sheetCuttingMaterialId",
	"laserSheetCuttingGasId",
	"thickness",
] as const;
type LaserSheetCuttingSpeedUniqueMembersKeyTuple = typeof LaserSheetCuttingSpeedUniqueMembersKey;
export type LaserSheetCuttingSpeedUniqueMembersKey = LaserSheetCuttingSpeedUniqueMembersKeyTuple[number];
export const LaserSheetCuttingPierceTimeUniqueMembersKey = [
	"sheetCuttingMaterialId",
	"laserSheetCuttingGasId",
	"thickness",
] as const;
type LaserSheetCuttingPierceTimeUniqueMembersKeyTuple = typeof LaserSheetCuttingPierceTimeUniqueMembersKey;
export type LaserSheetCuttingPierceTimeUniqueMembersKey = LaserSheetCuttingPierceTimeUniqueMembersKeyTuple[number];
export const LaserSheetCuttingRateUniqueMembersKey = [
	"sheetCuttingMaterialId",
	"laserSheetCuttingGasId",
] as const;
type LaserSheetCuttingRateUniqueMembersKeyTuple = typeof LaserSheetCuttingRateUniqueMembersKey;
export type LaserSheetCuttingRateUniqueMembersKey = LaserSheetCuttingRateUniqueMembersKeyTuple[number];
export const LaserSheetCuttingMinAreaUniqueMembersKey = [
	"sheetCuttingMaterialId",
	"laserSheetCuttingGasId",
	"thickness",
] as const;
type LaserSheetCuttingMinAreaUniqueMembersKeyTuple = typeof LaserSheetCuttingMinAreaUniqueMembersKey;
export type LaserSheetCuttingMinAreaUniqueMembersKey = LaserSheetCuttingMinAreaUniqueMembersKeyTuple[number];
export const LaserSheetCuttingMaxThicknessUniqueMembersKey = [
	"sheetCuttingMaterialId",
	"laserSheetCuttingGasId",
] as const;
type LaserSheetCuttingMaxThicknessUniqueMembersKeyTuple = typeof LaserSheetCuttingMaxThicknessUniqueMembersKey;
export type LaserSheetCuttingMaxThicknessUniqueMembersKey = LaserSheetCuttingMaxThicknessUniqueMembersKeyTuple[number];
export const PackagingUniqueMembersKey = [
	"identifier",
] as const;
type PackagingUniqueMembersKeyTuple = typeof PackagingUniqueMembersKey;
export type PackagingUniqueMembersKey = PackagingUniqueMembersKeyTuple[number];
export const TransportationCostsUniqueMembersKey = [
	"identifier",
] as const;
type TransportationCostsUniqueMembersKeyTuple = typeof TransportationCostsUniqueMembersKey;
export type TransportationCostsUniqueMembersKey = TransportationCostsUniqueMembersKeyTuple[number];
export const SurchargeUniqueMembersKey = [
	"name",
	"type",
	"value",
] as const;
type SurchargeUniqueMembersKeyTuple = typeof SurchargeUniqueMembersKey;
export type SurchargeUniqueMembersKey = SurchargeUniqueMembersKeyTuple[number];
export const ProcessUniqueMembersKey = [
	"identifier",
] as const;
type ProcessUniqueMembersKeyTuple = typeof ProcessUniqueMembersKey;
export type ProcessUniqueMembersKey = ProcessUniqueMembersKeyTuple[number];
export const ProcessRateUniqueMembersKey = [
	"processId",
] as const;
type ProcessRateUniqueMembersKeyTuple = typeof ProcessRateUniqueMembersKey;
export type ProcessRateUniqueMembersKey = ProcessRateUniqueMembersKeyTuple[number];
export const ProcessSetupTimeFallbackUniqueMembersKey = [
	"processId",
] as const;
type ProcessSetupTimeFallbackUniqueMembersKeyTuple = typeof ProcessSetupTimeFallbackUniqueMembersKey;
export type ProcessSetupTimeFallbackUniqueMembersKey = ProcessSetupTimeFallbackUniqueMembersKeyTuple[number];
export const ProcessUnitTimeFallbackUniqueMembersKey = [
	"processId",
] as const;
type ProcessUnitTimeFallbackUniqueMembersKeyTuple = typeof ProcessUnitTimeFallbackUniqueMembersKey;
export type ProcessUnitTimeFallbackUniqueMembersKey = ProcessUnitTimeFallbackUniqueMembersKeyTuple[number];
export const SheetUniqueMembersKey = [
	"identifier",
] as const;
type SheetUniqueMembersKeyTuple = typeof SheetUniqueMembersKey;
export type SheetUniqueMembersKey = SheetUniqueMembersKeyTuple[number];
export const SheetModulusUniqueMembersKey = [
	"sheetId",
] as const;
type SheetModulusUniqueMembersKeyTuple = typeof SheetModulusUniqueMembersKey;
export type SheetModulusUniqueMembersKey = SheetModulusUniqueMembersKeyTuple[number];
export const SheetPriceUniqueMembersKey = [
	"sheetId",
] as const;
type SheetPriceUniqueMembersKeyTuple = typeof SheetPriceUniqueMembersKey;
export type SheetPriceUniqueMembersKey = SheetPriceUniqueMembersKeyTuple[number];
export const UpperDieGroupUniqueMembersKey = [
	"identifier",
] as const;
type UpperDieGroupUniqueMembersKeyTuple = typeof UpperDieGroupUniqueMembersKey;
export type UpperDieGroupUniqueMembersKey = UpperDieGroupUniqueMembersKeyTuple[number];
export const LowerDieGroupUniqueMembersKey = [
	"identifier",
] as const;
type LowerDieGroupUniqueMembersKeyTuple = typeof LowerDieGroupUniqueMembersKey;
export type LowerDieGroupUniqueMembersKey = LowerDieGroupUniqueMembersKeyTuple[number];
export const BendDeductionUniqueMembersKey = [
	"sheetBendingMaterialId",
	"upperDieGroupId",
	"lowerDieGroupId",
	"thickness",
	"bendAngle",
] as const;
type BendDeductionUniqueMembersKeyTuple = typeof BendDeductionUniqueMembersKey;
export type BendDeductionUniqueMembersKey = BendDeductionUniqueMembersKeyTuple[number];
export const SettingUniqueMembersKey = [
	"key",
] as const;
type SettingUniqueMembersKeyTuple = typeof SettingUniqueMembersKey;
export type SettingUniqueMembersKey = SettingUniqueMembersKeyTuple[number];
export const AutomaticMechanicalDeburringMaterialUniqueMembersKey = [
	"sheetMaterialId",
] as const;
type AutomaticMechanicalDeburringMaterialUniqueMembersKeyTuple = typeof AutomaticMechanicalDeburringMaterialUniqueMembersKey;
export type AutomaticMechanicalDeburringMaterialUniqueMembersKey = AutomaticMechanicalDeburringMaterialUniqueMembersKeyTuple[number];
export const AutomaticMechanicalDeburringParametersUniqueMembersKey = [
	"automaticMechanicalDeburringMaterialId",
] as const;
type AutomaticMechanicalDeburringParametersUniqueMembersKeyTuple = typeof AutomaticMechanicalDeburringParametersUniqueMembersKey;
export type AutomaticMechanicalDeburringParametersUniqueMembersKey = AutomaticMechanicalDeburringParametersUniqueMembersKeyTuple[number];
export const DimensionConstraintsUniqueMembersKey = [
	"processId",
] as const;
type DimensionConstraintsUniqueMembersKeyTuple = typeof DimensionConstraintsUniqueMembersKey;
export type DimensionConstraintsUniqueMembersKey = DimensionConstraintsUniqueMembersKeyTuple[number];
export const ScrewThreadUniqueMembersKey = [
	"identifier",
] as const;
type ScrewThreadUniqueMembersKeyTuple = typeof ScrewThreadUniqueMembersKey;
export type ScrewThreadUniqueMembersKey = ScrewThreadUniqueMembersKeyTuple[number];
export const TappingTimeParametersUniqueMembersKey = [
	"processId",
	"screwThreadId",
] as const;
type TappingTimeParametersUniqueMembersKeyTuple = typeof TappingTimeParametersUniqueMembersKey;
export type TappingTimeParametersUniqueMembersKey = TappingTimeParametersUniqueMembersKeyTuple[number];
export const TubeMaterialUniqueMembersKey = [
	"identifier",
] as const;
type TubeMaterialUniqueMembersKeyTuple = typeof TubeMaterialUniqueMembersKey;
export type TubeMaterialUniqueMembersKey = TubeMaterialUniqueMembersKeyTuple[number];
export const TubeMaterialDensityUniqueMembersKey = [
	"tubeMaterialId",
] as const;
type TubeMaterialDensityUniqueMembersKeyTuple = typeof TubeMaterialDensityUniqueMembersKey;
export type TubeMaterialDensityUniqueMembersKey = TubeMaterialDensityUniqueMembersKeyTuple[number];
export const TubeProfileUniqueMembersKey = [
	"identifier",
] as const;
type TubeProfileUniqueMembersKeyTuple = typeof TubeProfileUniqueMembersKey;
export type TubeProfileUniqueMembersKey = TubeProfileUniqueMembersKeyTuple[number];
export const TubeSpecificationUniqueMembersKey = [
	"identifier",
] as const;
type TubeSpecificationUniqueMembersKeyTuple = typeof TubeSpecificationUniqueMembersKey;
export type TubeSpecificationUniqueMembersKey = TubeSpecificationUniqueMembersKeyTuple[number];
export const TubeUniqueMembersKey = [
	"identifier",
] as const;
type TubeUniqueMembersKeyTuple = typeof TubeUniqueMembersKey;
export type TubeUniqueMembersKey = TubeUniqueMembersKeyTuple[number];
export const UpperDieUniqueMembersKey = [
	"identifier",
] as const;
type UpperDieUniqueMembersKeyTuple = typeof UpperDieUniqueMembersKey;
export type UpperDieUniqueMembersKey = UpperDieUniqueMembersKeyTuple[number];
export const LowerDieUniqueMembersKey = [
	"identifier",
] as const;
type LowerDieUniqueMembersKeyTuple = typeof LowerDieUniqueMembersKey;
export type LowerDieUniqueMembersKey = LowerDieUniqueMembersKeyTuple[number];
export const UpperDieUnitUniqueMembersKey = [
	"upperDieId",
	"dimX",
] as const;
type UpperDieUnitUniqueMembersKeyTuple = typeof UpperDieUnitUniqueMembersKey;
export type UpperDieUnitUniqueMembersKey = UpperDieUnitUniqueMembersKeyTuple[number];
export const LowerDieUnitUniqueMembersKey = [
	"lowerDieId",
	"dimX",
] as const;
type LowerDieUnitUniqueMembersKeyTuple = typeof LowerDieUnitUniqueMembersKey;
export type LowerDieUnitUniqueMembersKey = LowerDieUnitUniqueMembersKeyTuple[number];
export const ProcessHandlingTimeUniqueMembersKey = [
	"processId",
	"mass",
] as const;
type ProcessHandlingTimeUniqueMembersKeyTuple = typeof ProcessHandlingTimeUniqueMembersKey;
export type ProcessHandlingTimeUniqueMembersKey = ProcessHandlingTimeUniqueMembersKeyTuple[number];
export const SheetStockUniqueMembersKey = [
	"sheetId",
] as const;
type SheetStockUniqueMembersKeyTuple = typeof SheetStockUniqueMembersKey;
export type SheetStockUniqueMembersKey = SheetStockUniqueMembersKeyTuple[number];
export const ProcessIdlePeriodUniqueMembersKey = [
	"processId",
] as const;
type ProcessIdlePeriodUniqueMembersKeyTuple = typeof ProcessIdlePeriodUniqueMembersKey;
export type ProcessIdlePeriodUniqueMembersKey = ProcessIdlePeriodUniqueMembersKeyTuple[number];
export const SheetMaterialScrapValueUniqueMembersKey = [
	"sheetMaterialId",
] as const;
type SheetMaterialScrapValueUniqueMembersKeyTuple = typeof SheetMaterialScrapValueUniqueMembersKey;
export type SheetMaterialScrapValueUniqueMembersKey = SheetMaterialScrapValueUniqueMembersKeyTuple[number];
export const SheetPriorityUniqueMembersKey = [
	"sheetId",
] as const;
type SheetPriorityUniqueMembersKeyTuple = typeof SheetPriorityUniqueMembersKey;
export type SheetPriorityUniqueMembersKey = SheetPriorityUniqueMembersKeyTuple[number];
export const DieGroupPriorityUniqueMembersKey = [
	"upperDieGroupId",
	"lowerDieGroupId",
	"sheetBendingMaterialId",
	"sheetThickness",
] as const;
type DieGroupPriorityUniqueMembersKeyTuple = typeof DieGroupPriorityUniqueMembersKey;
export type DieGroupPriorityUniqueMembersKey = DieGroupPriorityUniqueMembersKeyTuple[number];
export const SheetCuttingMaterialUniqueMembersKey = [
	"identifier",
] as const;
type SheetCuttingMaterialUniqueMembersKeyTuple = typeof SheetCuttingMaterialUniqueMembersKey;
export type SheetCuttingMaterialUniqueMembersKey = SheetCuttingMaterialUniqueMembersKeyTuple[number];
export const SheetBendingMaterialUniqueMembersKey = [
	"identifier",
] as const;
type SheetBendingMaterialUniqueMembersKeyTuple = typeof SheetBendingMaterialUniqueMembersKey;
export type SheetBendingMaterialUniqueMembersKey = SheetBendingMaterialUniqueMembersKeyTuple[number];
export const TubeCuttingProcessUniqueMembersKey = [
	"identifier",
] as const;
type TubeCuttingProcessUniqueMembersKeyTuple = typeof TubeCuttingProcessUniqueMembersKey;
export type TubeCuttingProcessUniqueMembersKey = TubeCuttingProcessUniqueMembersKeyTuple[number];
export const TubeCuttingProcessMappingUniqueMembersKey = [
	"processId",
	"tubeMaterialId",
] as const;
type TubeCuttingProcessMappingUniqueMembersKeyTuple = typeof TubeCuttingProcessMappingUniqueMembersKey;
export type TubeCuttingProcessMappingUniqueMembersKey = TubeCuttingProcessMappingUniqueMembersKeyTuple[number];
export const TubeCuttingSpeedUniqueMembersKey = [
	"tubeCuttingProcessId",
	"thickness",
] as const;
type TubeCuttingSpeedUniqueMembersKeyTuple = typeof TubeCuttingSpeedUniqueMembersKey;
export type TubeCuttingSpeedUniqueMembersKey = TubeCuttingSpeedUniqueMembersKeyTuple[number];
export const TubeCuttingPierceTimeUniqueMembersKey = [
	"tubeCuttingProcessId",
	"thickness",
] as const;
type TubeCuttingPierceTimeUniqueMembersKeyTuple = typeof TubeCuttingPierceTimeUniqueMembersKey;
export type TubeCuttingPierceTimeUniqueMembersKey = TubeCuttingPierceTimeUniqueMembersKeyTuple[number];
export const TubePriceUniqueMembersKey = [
	"tubeId",
] as const;
type TubePriceUniqueMembersKeyTuple = typeof TubePriceUniqueMembersKey;
export type TubePriceUniqueMembersKey = TubePriceUniqueMembersKeyTuple[number];
export const TubeStockUniqueMembersKey = [
	"tubeId",
] as const;
type TubeStockUniqueMembersKeyTuple = typeof TubeStockUniqueMembersKey;
export type TubeStockUniqueMembersKey = TubeStockUniqueMembersKeyTuple[number];
export const TubeMaterialScrapValueUniqueMembersKey = [
	"tubeMaterialId",
] as const;
type TubeMaterialScrapValueUniqueMembersKeyTuple = typeof TubeMaterialScrapValueUniqueMembersKey;
export type TubeMaterialScrapValueUniqueMembersKey = TubeMaterialScrapValueUniqueMembersKeyTuple[number];
export const SheetCuttingProcessUniqueMembersKey = [
	"identifier",
] as const;
type SheetCuttingProcessUniqueMembersKeyTuple = typeof SheetCuttingProcessUniqueMembersKey;
export type SheetCuttingProcessUniqueMembersKey = SheetCuttingProcessUniqueMembersKeyTuple[number];
export const SheetCuttingProcessMappingUniqueMembersKey = [
	"processId",
	"sheetMaterialId",
] as const;
type SheetCuttingProcessMappingUniqueMembersKeyTuple = typeof SheetCuttingProcessMappingUniqueMembersKey;
export type SheetCuttingProcessMappingUniqueMembersKey = SheetCuttingProcessMappingUniqueMembersKeyTuple[number];
export const SheetCuttingMotionParametersUniqueMembersKey = [
	"sheetCuttingProcessId",
	"thickness",
	"contourArea",
] as const;
type SheetCuttingMotionParametersUniqueMembersKeyTuple = typeof SheetCuttingMotionParametersUniqueMembersKey;
export type SheetCuttingMotionParametersUniqueMembersKey = SheetCuttingMotionParametersUniqueMembersKeyTuple[number];
export const SheetCuttingProcessToLaserCuttingGasUniqueMembersKey = [
	"sheetCuttingProcessId",
] as const;
type SheetCuttingProcessToLaserCuttingGasUniqueMembersKeyTuple = typeof SheetCuttingProcessToLaserCuttingGasUniqueMembersKey;
export type SheetCuttingProcessToLaserCuttingGasUniqueMembersKey = SheetCuttingProcessToLaserCuttingGasUniqueMembersKeyTuple[number];
export const PurchasePartMaterialUniqueMembersKey = [
	"identifier",
] as const;
type PurchasePartMaterialUniqueMembersKeyTuple = typeof PurchasePartMaterialUniqueMembersKey;
export type PurchasePartMaterialUniqueMembersKey = PurchasePartMaterialUniqueMembersKeyTuple[number];
export const ProcessConstraintsSheetMaterialUniqueMembersKey = [
	"processId",
	"sheetMaterialId",
] as const;
type ProcessConstraintsSheetMaterialUniqueMembersKeyTuple = typeof ProcessConstraintsSheetMaterialUniqueMembersKey;
export type ProcessConstraintsSheetMaterialUniqueMembersKey = ProcessConstraintsSheetMaterialUniqueMembersKeyTuple[number];
export const ProcessConstraintsTubeMaterialUniqueMembersKey = [
	"processId",
	"tubeMaterialId",
] as const;
type ProcessConstraintsTubeMaterialUniqueMembersKeyTuple = typeof ProcessConstraintsTubeMaterialUniqueMembersKey;
export type ProcessConstraintsTubeMaterialUniqueMembersKey = ProcessConstraintsTubeMaterialUniqueMembersKeyTuple[number];
export const ProcessConstraintsPurchasePartMaterialUniqueMembersKey = [
	"processId",
	"purchasePartMaterialId",
] as const;
type ProcessConstraintsPurchasePartMaterialUniqueMembersKeyTuple = typeof ProcessConstraintsPurchasePartMaterialUniqueMembersKey;
export type ProcessConstraintsPurchasePartMaterialUniqueMembersKey = ProcessConstraintsPurchasePartMaterialUniqueMembersKeyTuple[number];
export const ConsumableUniqueMembersKey = [
	"identifier",
] as const;
type ConsumableUniqueMembersKeyTuple = typeof ConsumableUniqueMembersKey;
export type ConsumableUniqueMembersKey = ConsumableUniqueMembersKeyTuple[number];
export const ProcessConsumableRateUniqueMembersKey = [
	"processId",
	"consumableId",
] as const;
type ProcessConsumableRateUniqueMembersKeyTuple = typeof ProcessConsumableRateUniqueMembersKey;
export type ProcessConsumableRateUniqueMembersKey = ProcessConsumableRateUniqueMembersKeyTuple[number];
export const SheetCuttingProcessConsumableRateUniqueMembersKey = [
	"sheetCuttingProcessId",
	"consumableId",
	"thickness",
] as const;
type SheetCuttingProcessConsumableRateUniqueMembersKeyTuple = typeof SheetCuttingProcessConsumableRateUniqueMembersKey;
export type SheetCuttingProcessConsumableRateUniqueMembersKey = SheetCuttingProcessConsumableRateUniqueMembersKeyTuple[number];
export const TubeCuttingProcessConsumableRateUniqueMembersKey = [
	"tubeCuttingProcessId",
	"consumableId",
	"thickness",
] as const;
type TubeCuttingProcessConsumableRateUniqueMembersKeyTuple = typeof TubeCuttingProcessConsumableRateUniqueMembersKey;
export type TubeCuttingProcessConsumableRateUniqueMembersKey = TubeCuttingProcessConsumableRateUniqueMembersKeyTuple[number];
export const SheetCuttingThicknessConstraintsUniqueMembersKey = [
	"sheetCuttingProcessId",
] as const;
type SheetCuttingThicknessConstraintsUniqueMembersKeyTuple = typeof SheetCuttingThicknessConstraintsUniqueMembersKey;
export type SheetCuttingThicknessConstraintsUniqueMembersKey = SheetCuttingThicknessConstraintsUniqueMembersKeyTuple[number];
declare interface UniqueMembersKeyMap {
	sheetMaterial: SheetMaterialUniqueMembersKey[];
	sheetMaterialDensity: SheetMaterialDensityUniqueMembersKey[];
	sheetCuttingMaterialMapping: SheetCuttingMaterialMappingUniqueMembersKey[];
	sheetBendingMaterialMapping: SheetBendingMaterialMappingUniqueMembersKey[];
	bendTime: BendTimeUniqueMembersKey[];
	bendTimeParameters: BendTimeParametersUniqueMembersKey[];
	bendRateParameters: BendRateParametersUniqueMembersKey[];
	bendLineConstraint: BendLineConstraintUniqueMembersKey[];
	laserSheetCuttingGas: LaserSheetCuttingGasUniqueMembersKey[];
	laserSheetCuttingSpeed: LaserSheetCuttingSpeedUniqueMembersKey[];
	laserSheetCuttingPierceTime: LaserSheetCuttingPierceTimeUniqueMembersKey[];
	laserSheetCuttingRate: LaserSheetCuttingRateUniqueMembersKey[];
	laserSheetCuttingMinArea: LaserSheetCuttingMinAreaUniqueMembersKey[];
	laserSheetCuttingMaxThickness: LaserSheetCuttingMaxThicknessUniqueMembersKey[];
	packaging: PackagingUniqueMembersKey[];
	transportationCosts: TransportationCostsUniqueMembersKey[];
	surcharge: SurchargeUniqueMembersKey[];
	process: ProcessUniqueMembersKey[];
	processRate: ProcessRateUniqueMembersKey[];
	processSetupTimeFallback: ProcessSetupTimeFallbackUniqueMembersKey[];
	processUnitTimeFallback: ProcessUnitTimeFallbackUniqueMembersKey[];
	sheet: SheetUniqueMembersKey[];
	sheetModulus: SheetModulusUniqueMembersKey[];
	sheetPrice: SheetPriceUniqueMembersKey[];
	upperDieGroup: UpperDieGroupUniqueMembersKey[];
	lowerDieGroup: LowerDieGroupUniqueMembersKey[];
	bendDeduction: BendDeductionUniqueMembersKey[];
	setting: SettingUniqueMembersKey[];
	automaticMechanicalDeburringMaterial: AutomaticMechanicalDeburringMaterialUniqueMembersKey[];
	automaticMechanicalDeburringParameters: AutomaticMechanicalDeburringParametersUniqueMembersKey[];
	dimensionConstraints: DimensionConstraintsUniqueMembersKey[];
	screwThread: ScrewThreadUniqueMembersKey[];
	tappingTimeParameters: TappingTimeParametersUniqueMembersKey[];
	tubeMaterial: TubeMaterialUniqueMembersKey[];
	tubeMaterialDensity: TubeMaterialDensityUniqueMembersKey[];
	tubeProfile: TubeProfileUniqueMembersKey[];
	tubeSpecification: TubeSpecificationUniqueMembersKey[];
	tube: TubeUniqueMembersKey[];
	upperDie: UpperDieUniqueMembersKey[];
	lowerDie: LowerDieUniqueMembersKey[];
	upperDieUnit: UpperDieUnitUniqueMembersKey[];
	lowerDieUnit: LowerDieUnitUniqueMembersKey[];
	processHandlingTime: ProcessHandlingTimeUniqueMembersKey[];
	sheetStock: SheetStockUniqueMembersKey[];
	processIdlePeriod: ProcessIdlePeriodUniqueMembersKey[];
	sheetMaterialScrapValue: SheetMaterialScrapValueUniqueMembersKey[];
	sheetPriority: SheetPriorityUniqueMembersKey[];
	dieGroupPriority: DieGroupPriorityUniqueMembersKey[];
	sheetCuttingMaterial: SheetCuttingMaterialUniqueMembersKey[];
	sheetBendingMaterial: SheetBendingMaterialUniqueMembersKey[];
	tubeCuttingProcess: TubeCuttingProcessUniqueMembersKey[];
	tubeCuttingProcessMapping: TubeCuttingProcessMappingUniqueMembersKey[];
	tubeCuttingSpeed: TubeCuttingSpeedUniqueMembersKey[];
	tubeCuttingPierceTime: TubeCuttingPierceTimeUniqueMembersKey[];
	tubePrice: TubePriceUniqueMembersKey[];
	tubeStock: TubeStockUniqueMembersKey[];
	tubeMaterialScrapValue: TubeMaterialScrapValueUniqueMembersKey[];
	sheetCuttingProcess: SheetCuttingProcessUniqueMembersKey[];
	sheetCuttingProcessMapping: SheetCuttingProcessMappingUniqueMembersKey[];
	sheetCuttingMotionParameters: SheetCuttingMotionParametersUniqueMembersKey[];
	sheetCuttingProcessToLaserCuttingGas: SheetCuttingProcessToLaserCuttingGasUniqueMembersKey[];
	purchasePartMaterial: PurchasePartMaterialUniqueMembersKey[];
	processConstraintsSheetMaterial: ProcessConstraintsSheetMaterialUniqueMembersKey[];
	processConstraintsTubeMaterial: ProcessConstraintsTubeMaterialUniqueMembersKey[];
	processConstraintsPurchasePartMaterial: ProcessConstraintsPurchasePartMaterialUniqueMembersKey[];
	consumable: ConsumableUniqueMembersKey[];
	processConsumableRate: ProcessConsumableRateUniqueMembersKey[];
	sheetCuttingProcessConsumableRate: SheetCuttingProcessConsumableRateUniqueMembersKey[];
	tubeCuttingProcessConsumableRate: TubeCuttingProcessConsumableRateUniqueMembersKey[];
	sheetCuttingThicknessConstraints: SheetCuttingThicknessConstraintsUniqueMembersKey[];
}
export const uniqueMembersKeyMap : UniqueMembersKeyMap = {
	sheetMaterial: [...SheetMaterialUniqueMembersKey],
	sheetMaterialDensity: [...SheetMaterialDensityUniqueMembersKey],
	sheetCuttingMaterialMapping: [...SheetCuttingMaterialMappingUniqueMembersKey],
	sheetBendingMaterialMapping: [...SheetBendingMaterialMappingUniqueMembersKey],
	bendTime: [...BendTimeUniqueMembersKey],
	bendTimeParameters: [...BendTimeParametersUniqueMembersKey],
	bendRateParameters: [...BendRateParametersUniqueMembersKey],
	bendLineConstraint: [...BendLineConstraintUniqueMembersKey],
	laserSheetCuttingGas: [...LaserSheetCuttingGasUniqueMembersKey],
	laserSheetCuttingSpeed: [...LaserSheetCuttingSpeedUniqueMembersKey],
	laserSheetCuttingPierceTime: [...LaserSheetCuttingPierceTimeUniqueMembersKey],
	laserSheetCuttingRate: [...LaserSheetCuttingRateUniqueMembersKey],
	laserSheetCuttingMinArea: [...LaserSheetCuttingMinAreaUniqueMembersKey],
	laserSheetCuttingMaxThickness: [...LaserSheetCuttingMaxThicknessUniqueMembersKey],
	packaging: [...PackagingUniqueMembersKey],
	transportationCosts: [...TransportationCostsUniqueMembersKey],
	surcharge: [...SurchargeUniqueMembersKey],
	process: [...ProcessUniqueMembersKey],
	processRate: [...ProcessRateUniqueMembersKey],
	processSetupTimeFallback: [...ProcessSetupTimeFallbackUniqueMembersKey],
	processUnitTimeFallback: [...ProcessUnitTimeFallbackUniqueMembersKey],
	sheet: [...SheetUniqueMembersKey],
	sheetModulus: [...SheetModulusUniqueMembersKey],
	sheetPrice: [...SheetPriceUniqueMembersKey],
	upperDieGroup: [...UpperDieGroupUniqueMembersKey],
	lowerDieGroup: [...LowerDieGroupUniqueMembersKey],
	bendDeduction: [...BendDeductionUniqueMembersKey],
	setting: [...SettingUniqueMembersKey],
	automaticMechanicalDeburringMaterial: [...AutomaticMechanicalDeburringMaterialUniqueMembersKey],
	automaticMechanicalDeburringParameters: [...AutomaticMechanicalDeburringParametersUniqueMembersKey],
	dimensionConstraints: [...DimensionConstraintsUniqueMembersKey],
	screwThread: [...ScrewThreadUniqueMembersKey],
	tappingTimeParameters: [...TappingTimeParametersUniqueMembersKey],
	tubeMaterial: [...TubeMaterialUniqueMembersKey],
	tubeMaterialDensity: [...TubeMaterialDensityUniqueMembersKey],
	tubeProfile: [...TubeProfileUniqueMembersKey],
	tubeSpecification: [...TubeSpecificationUniqueMembersKey],
	tube: [...TubeUniqueMembersKey],
	upperDie: [...UpperDieUniqueMembersKey],
	lowerDie: [...LowerDieUniqueMembersKey],
	upperDieUnit: [...UpperDieUnitUniqueMembersKey],
	lowerDieUnit: [...LowerDieUnitUniqueMembersKey],
	processHandlingTime: [...ProcessHandlingTimeUniqueMembersKey],
	sheetStock: [...SheetStockUniqueMembersKey],
	processIdlePeriod: [...ProcessIdlePeriodUniqueMembersKey],
	sheetMaterialScrapValue: [...SheetMaterialScrapValueUniqueMembersKey],
	sheetPriority: [...SheetPriorityUniqueMembersKey],
	dieGroupPriority: [...DieGroupPriorityUniqueMembersKey],
	sheetCuttingMaterial: [...SheetCuttingMaterialUniqueMembersKey],
	sheetBendingMaterial: [...SheetBendingMaterialUniqueMembersKey],
	tubeCuttingProcess: [...TubeCuttingProcessUniqueMembersKey],
	tubeCuttingProcessMapping: [...TubeCuttingProcessMappingUniqueMembersKey],
	tubeCuttingSpeed: [...TubeCuttingSpeedUniqueMembersKey],
	tubeCuttingPierceTime: [...TubeCuttingPierceTimeUniqueMembersKey],
	tubePrice: [...TubePriceUniqueMembersKey],
	tubeStock: [...TubeStockUniqueMembersKey],
	tubeMaterialScrapValue: [...TubeMaterialScrapValueUniqueMembersKey],
	sheetCuttingProcess: [...SheetCuttingProcessUniqueMembersKey],
	sheetCuttingProcessMapping: [...SheetCuttingProcessMappingUniqueMembersKey],
	sheetCuttingMotionParameters: [...SheetCuttingMotionParametersUniqueMembersKey],
	sheetCuttingProcessToLaserCuttingGas: [...SheetCuttingProcessToLaserCuttingGasUniqueMembersKey],
	purchasePartMaterial: [...PurchasePartMaterialUniqueMembersKey],
	processConstraintsSheetMaterial: [...ProcessConstraintsSheetMaterialUniqueMembersKey],
	processConstraintsTubeMaterial: [...ProcessConstraintsTubeMaterialUniqueMembersKey],
	processConstraintsPurchasePartMaterial: [...ProcessConstraintsPurchasePartMaterialUniqueMembersKey],
	consumable: [...ConsumableUniqueMembersKey],
	processConsumableRate: [...ProcessConsumableRateUniqueMembersKey],
	sheetCuttingProcessConsumableRate: [...SheetCuttingProcessConsumableRateUniqueMembersKey],
	tubeCuttingProcessConsumableRate: [...TubeCuttingProcessConsumableRateUniqueMembersKey],
	sheetCuttingThicknessConstraints: [...SheetCuttingThicknessConstraintsUniqueMembersKey],
};
