import type { _NSCopying } from "../Foundation/NSCopying.js";
import type { _NSObject } from "../Foundation/NSObject.js";
import type { _NSString } from "../Foundation/NSString.js";
import type { _MTLCompileOptions } from "./MTLCompileOptions.js";
export declare class _MTL4LibraryDescriptor extends _NSObject {
    static alloc(): _MTL4LibraryDescriptor;
    static new(): _MTL4LibraryDescriptor;
    init(): _MTL4LibraryDescriptor;
    /**
     * Assigns an optional string containing the source code of the shader language program to compile into a Metal library.
     */
    source(): _NSString | null;
    setSource$(value: _NSString | null): void;
    /** Provides compile-time options for the Metal library. */
    options(): _MTLCompileOptions | null;
    setOptions$(value: _MTLCompileOptions | null): void;
    /** Assigns an optional name to the Metal library. */
    name(): _NSString | null;
    setName$(value: _NSString | null): void;
}
export interface _MTL4LibraryDescriptor extends _NSCopying {
}
