import type { _NSCopying } from "../Foundation/NSCopying.js";
import type { _NSData } from "../Foundation/NSData.js";
import type { _NSObject } from "../Foundation/NSObject.js";
export declare class _MLCYOLOLossDescriptor extends _NSObject {
    static alloc(): _MLCYOLOLossDescriptor;
    static new(): _MLCYOLOLossDescriptor;
    init(): _MLCYOLOLossDescriptor;
    /**
     * @abstract Create a YOLO loss descriptor object @param anchorBoxes The anchor box data @param anchorBoxCount The number of anchor boxes @return A new MLCYOLOLossDescriptor object.
     */
    static descriptorWithAnchorBoxes$anchorBoxCount$(anchorBoxes: _NSData, anchorBoxCount: number): _MLCYOLOLossDescriptor;
    /**
     * @property anchorBoxCount @abstract number of anchor boxes used to detect object per grid cell
     */
    anchorBoxCount(): number;
    /**
     * @property anchorBoxes @abstract \p NSData containing the width and height for \p anchorBoxCount anchor boxes This \p NSData should have 2 floating-point values per anchor box which represent the width and height of the anchor box.
     */
    anchorBoxes(): _NSData;
    /**
     * @property shouldRescore @abstract Rescore pertains to multiplying the confidence groundTruth with IOU (intersection over union) of predicted bounding box and the groundTruth boundingBox. The default is YES
     */
    shouldRescore(): boolean;
    setShouldRescore$(value: boolean): void;
    /**
     * @property scaleSpatialPositionLoss @abstract The scale factor for spatial position loss and loss gradient. The default is 10.0
     */
    scaleSpatialPositionLoss(): number;
    setScaleSpatialPositionLoss$(value: number): void;
    /**
     * @property scaleSpatialSizeLoss @abstract The scale factor for spatial size loss and loss gradient. The default is 10.0
     */
    scaleSpatialSizeLoss(): number;
    setScaleSpatialSizeLoss$(value: number): void;
    /**
     * @property scaleNoObject @abstract The scale factor for no object confidence loss and loss gradient. The default is 5.0
     */
    scaleNoObjectConfidenceLoss(): number;
    setScaleNoObjectConfidenceLoss$(value: number): void;
    /**
     * @property scaleObject @abstract The scale factor for object confidence loss and loss gradient. The default is 100.0
     */
    scaleObjectConfidenceLoss(): number;
    setScaleObjectConfidenceLoss$(value: number): void;
    /**
     * @property scaleClass @abstract The scale factor for no object classes loss and loss gradient. The default is 2.0
     */
    scaleClassLoss(): number;
    setScaleClassLoss$(value: number): void;
    /**
     * @property positive IOU @abstract If the prediction IOU with groundTruth is higher than this value we consider it a confident object presence, The default is 0.7
     */
    minimumIOUForObjectPresence(): number;
    setMinimumIOUForObjectPresence$(value: number): void;
    /**
     * @property negative IOU @abstract If the prediction IOU with groundTruth is lower than this value we consider it a confident object absence. The default is 0.3
     */
    maximumIOUForObjectAbsence(): number;
    setMaximumIOUForObjectAbsence$(value: number): void;
}
export interface _MLCYOLOLossDescriptor extends _NSCopying {
}
