import type { _NSCopying } from "../Foundation/NSCopying.js";
import type { _NSObject } from "../Foundation/NSObject.js";
import type { _NSString } from "../Foundation/NSString.js";
import type { NSRange } from "../structs/NSRange.js";
import type { MTLDataType } from "./MTLDataType.js";
export declare class _MTLFunctionConstantValues extends _NSObject {
    static alloc(): _MTLFunctionConstantValues;
    static new(): _MTLFunctionConstantValues;
    init(): _MTLFunctionConstantValues;
    /** using indices */
    setConstantValue$type$atIndex$(value: Uint8Array, type: MTLDataType, index: number): void;
    setConstantValues$type$withRange$(values: Uint8Array, type: MTLDataType, range: NSRange): void;
    /** using names */
    setConstantValue$type$withName$(value: Uint8Array, type: MTLDataType, name: _NSString): void;
    /** delete all the constants */
    reset(): void;
}
export interface _MTLFunctionConstantValues extends _NSCopying {
}
