import type { NobjcObject } from "objc-js";
import type { _MDLVertexDescriptor } from "../ModelIO/MDLVertexDescriptor.js";
import type { _MTLVertexDescriptor } from "../Metal/MTLVertexDescriptor.js";
import type { MDLVertexFormat } from "../ModelIO/MDLVertexFormat.js";
import type { MTLVertexFormat } from "../Metal/MTLVertexFormat.js";
export declare function MTKMetalVertexDescriptorFromModelIO(modelIODescriptor: _MDLVertexDescriptor): _MTLVertexDescriptor | null;
export declare function MTKMetalVertexDescriptorFromModelIOWithError(modelIODescriptor: _MDLVertexDescriptor, error: NobjcObject | null): _MTLVertexDescriptor | null;
export declare function MTKMetalVertexFormatFromModelIO(vertexFormat: MDLVertexFormat): MTLVertexFormat;
export declare function MTKModelIOVertexDescriptorFromMetal(metalDescriptor: _MTLVertexDescriptor): _MDLVertexDescriptor;
export declare function MTKModelIOVertexDescriptorFromMetalWithError(metalDescriptor: _MTLVertexDescriptor, error: NobjcObject | null): _MDLVertexDescriptor;
export declare function MTKModelIOVertexFormatFromMetal(vertexFormat: MTLVertexFormat): MDLVertexFormat;
