import type { _NSArray } from "../Foundation/NSArray.js";
import type { _NSCopying } from "../Foundation/NSCopying.js";
import type { _NSObject } from "../Foundation/NSObject.js";
import type { _NSPredicate } from "../Foundation/NSPredicate.js";
import type { PHAssetSourceType } from "./PHAssetSourceType.js";
export declare class _PHFetchOptions extends _NSObject {
    static alloc(): _PHFetchOptions;
    static new(): _PHFetchOptions;
    init(): _PHFetchOptions;
    /** Some predicates / sorts may be suboptimal and we will log */
    predicate(): _NSPredicate | null;
    setPredicate$(value: _NSPredicate | null): void;
    sortDescriptors(): _NSArray | null;
    setSortDescriptors$(value: _NSArray | null): void;
    /** Whether hidden assets are included in fetch results. Defaults to NO */
    includeHiddenAssets(): boolean;
    setIncludeHiddenAssets$(value: boolean): void;
    /** Whether hidden burst assets are included in fetch results. Defaults to NO */
    includeAllBurstAssets(): boolean;
    setIncludeAllBurstAssets$(value: boolean): void;
    /**
     * The asset source types included in the fetch results. Defaults to PHAssetSourceTypeNone. If set to PHAssetSourceTypeNone the asset source types included in the fetch results are inferred from the type of query performed (see PHAsset fetchAssetsWithOptions:)
     */
    includeAssetSourceTypes(): PHAssetSourceType;
    setIncludeAssetSourceTypes$(value: PHAssetSourceType): void;
    /**
     * Limits the maximum number of objects returned in the fetch result, a value of 0 means no limit. Defaults to 0.
     */
    fetchLimit(): number;
    setFetchLimit$(value: number): void;
    /**
     * Whether the owner of this object is interested in incremental change details for the results of this fetch (see PHChange) Defaults to YES
     */
    wantsIncrementalChangeDetails(): boolean;
    setWantsIncrementalChangeDetails$(value: boolean): void;
}
export interface _PHFetchOptions extends _NSCopying {
}
