import type { _NSCopying } from "../Foundation/NSCopying.js";
import type { _NSObject } from "../Foundation/NSObject.js";
import type { _MTL4RenderPipelineColorAttachmentDescriptor } from "./MTL4RenderPipelineColorAttachmentDescriptor.js";
export declare class _MTL4RenderPipelineColorAttachmentDescriptorArray extends _NSObject {
    static alloc(): _MTL4RenderPipelineColorAttachmentDescriptorArray;
    static new(): _MTL4RenderPipelineColorAttachmentDescriptorArray;
    init(): _MTL4RenderPipelineColorAttachmentDescriptorArray;
    /**
     * Accesses a color attachment at a specific index. - Parameter attachmentIndex: Index of the attachment to access.
     */
    objectAtIndexedSubscript$(attachmentIndex: number): _MTL4RenderPipelineColorAttachmentDescriptor;
    /**
     * Sets an attachment at an index. This function offers 'copy' semantics. You can safely set the color attachment at any legal index to nil. This has the effect of resetting that attachment descriptor's state to its default values. - Parameters: - attachment: the descriptor of the attachment to set. - attachmentIndex: the index of the attachment within the array.
     */
    setObject$atIndexedSubscript$(attachment: _MTL4RenderPipelineColorAttachmentDescriptor | null, attachmentIndex: number): void;
    /** Resets the elements of the descriptor array */
    reset(): void;
}
export interface _MTL4RenderPipelineColorAttachmentDescriptorArray extends _NSCopying {
}
