import type { _PHProjectElement } from "./PHProjectElement.js";
import type { _NSArray } from "../Foundation/NSArray.js";
import type { _NSString } from "../Foundation/NSString.js";
import type { _PHCloudIdentifier } from "../Photos/PHCloudIdentifier.js";
import type { CGRect } from "../structs/CGRect.js";
export declare class _PHProjectAssetElement extends _PHProjectElement {
    static alloc(): _PHProjectAssetElement;
    static new(): _PHProjectAssetElement;
    init(): _PHProjectAssetElement;
    /**
     * Cloud identifier for the underlying PHAsset. This identifier must be converted to a localIdentifier before fetching, but if archiving the identifier in project data the provided PHCloudIdentifier should always be used.
     */
    cloudAssetIdentifier(): _PHCloudIdentifier;
    /**
     * If a user has explicitly annotated an asset (e.g., caption) that value will be provided in this property.
     */
    annotation(): _NSString;
    /**
     * If the asset was presented to the user in a cropped manner in Photos either automatically or through user manipulation (pan & zoom) before the creation of the project, the visible image area shown to the user will be provided as a crop rect. As a fallback, Photos may suggest a general "safe crop" based on image content through this property. The rect is in unit coordinates with an upper left origin. Default value: {(0.0, 0.0), (1.0,1.0)}
     */
    cropRect(): CGRect;
    /**
     * Array of regions of interest (faces, objects, etc.) in the assets. Note: Photos will filter out features of an asset that it doesn't believe to be meaningful in the context of the user's full library. For example, random faces in a crowd.
     */
    regionsOfInterest(): _NSArray;
    /**
     * The following properties are only used when the user creates a new project from an existing Apple Print Product. YES if the asset was presented horizontally flipped in the originating project.
     */
    horizontallyFlipped(): boolean;
    /** YES if the asset was presented vertically flipped in the originating project. */
    verticallyFlipped(): boolean;
}
