tns-platform-declarations
Version:
Platform-specific TypeScript declarations for NativeScript for accessing native objects
1,359 lines (711 loc) • 94.6 kB
TypeScript
declare class MDLAnimatedMatrix4x4 extends MDLAnimatedValue {
static alloc(): MDLAnimatedMatrix4x4; // inherited from NSObject
static new(): MDLAnimatedMatrix4x4; // inherited from NSObject
double4x4AtTime(time: number): simd_double4x4;
float4x4AtTime(time: number): simd_float4x4;
getDouble4x4ArrayMaxCount(valuesArray: interop.Pointer | interop.Reference<simd_double4x4>, maxCount: number): number;
getFloat4x4ArrayMaxCount(valuesArray: interop.Pointer | interop.Reference<simd_float4x4>, maxCount: number): number;
resetWithDouble4x4ArrayAtTimesCount(valuesArray: interop.Pointer | interop.Reference<simd_double4x4>, timesArray: interop.Pointer | interop.Reference<number>, count: number): void;
resetWithFloat4x4ArrayAtTimesCount(valuesArray: interop.Pointer | interop.Reference<simd_float4x4>, timesArray: interop.Pointer | interop.Reference<number>, count: number): void;
setDouble4x4AtTime(value: simd_double4x4, time: number): void;
setFloat4x4AtTime(value: simd_float4x4, time: number): void;
}
declare class MDLAnimatedQuaternion extends MDLAnimatedValue {
static alloc(): MDLAnimatedQuaternion; // inherited from NSObject
static new(): MDLAnimatedQuaternion; // inherited from NSObject
doubleQuaternionAtTime(time: number): simd_quatd;
floatQuaternionAtTime(time: number): simd_quatf;
getDoubleQuaternionArrayMaxCount(valuesArray: interop.Pointer | interop.Reference<simd_quatd>, maxCount: number): number;
getFloatQuaternionArrayMaxCount(valuesArray: interop.Pointer | interop.Reference<simd_quatf>, maxCount: number): number;
resetWithDoubleQuaternionArrayAtTimesCount(valuesArray: interop.Pointer | interop.Reference<simd_quatd>, timesArray: interop.Pointer | interop.Reference<number>, count: number): void;
resetWithFloatQuaternionArrayAtTimesCount(valuesArray: interop.Pointer | interop.Reference<simd_quatf>, timesArray: interop.Pointer | interop.Reference<number>, count: number): void;
setDoubleQuaternionAtTime(value: simd_quatd, time: number): void;
setFloatQuaternionAtTime(value: simd_quatf, time: number): void;
}
declare class MDLAnimatedQuaternionArray extends MDLAnimatedValue {
static alloc(): MDLAnimatedQuaternionArray; // inherited from NSObject
static new(): MDLAnimatedQuaternionArray; // inherited from NSObject
readonly elementCount: number;
constructor(o: { elementCount: number; });
getDoubleQuaternionArrayMaxCount(valuesArray: interop.Pointer | interop.Reference<simd_quatd>, maxCount: number): number;
getDoubleQuaternionArrayMaxCountAtTime(array: interop.Pointer | interop.Reference<simd_quatd>, maxCount: number, time: number): number;
getFloatQuaternionArrayMaxCount(valuesArray: interop.Pointer | interop.Reference<simd_quatf>, maxCount: number): number;
getFloatQuaternionArrayMaxCountAtTime(array: interop.Pointer | interop.Reference<simd_quatf>, maxCount: number, time: number): number;
initWithElementCount(arrayElementCount: number): this;
resetWithDoubleQuaternionArrayCountAtTimesCount(valuesArray: interop.Pointer | interop.Reference<simd_quatd>, valuesCount: number, timesArray: interop.Pointer | interop.Reference<number>, timesCount: number): void;
resetWithFloatQuaternionArrayCountAtTimesCount(valuesArray: interop.Pointer | interop.Reference<simd_quatf>, valuesCount: number, timesArray: interop.Pointer | interop.Reference<number>, timesCount: number): void;
setDoubleQuaternionArrayCountAtTime(array: interop.Pointer | interop.Reference<simd_quatd>, count: number, time: number): void;
setFloatQuaternionArrayCountAtTime(array: interop.Pointer | interop.Reference<simd_quatf>, count: number, time: number): void;
}
declare class MDLAnimatedScalar extends MDLAnimatedValue {
static alloc(): MDLAnimatedScalar; // inherited from NSObject
static new(): MDLAnimatedScalar; // inherited from NSObject
doubleAtTime(time: number): number;
floatAtTime(time: number): number;
getDoubleArrayMaxCount(valuesArray: interop.Pointer | interop.Reference<number>, maxCount: number): number;
getFloatArrayMaxCount(valuesArray: interop.Pointer | interop.Reference<number>, maxCount: number): number;
resetWithDoubleArrayAtTimesCount(valuesArray: interop.Pointer | interop.Reference<number>, timesArray: interop.Pointer | interop.Reference<number>, count: number): void;
resetWithFloatArrayAtTimesCount(valuesArray: interop.Pointer | interop.Reference<number>, timesArray: interop.Pointer | interop.Reference<number>, count: number): void;
setDoubleAtTime(value: number, time: number): void;
setFloatAtTime(value: number, time: number): void;
}
declare class MDLAnimatedScalarArray extends MDLAnimatedValue {
static alloc(): MDLAnimatedScalarArray; // inherited from NSObject
static new(): MDLAnimatedScalarArray; // inherited from NSObject
readonly elementCount: number;
constructor(o: { elementCount: number; });
getDoubleArrayMaxCount(valuesArray: interop.Pointer | interop.Reference<number>, maxCount: number): number;
getDoubleArrayMaxCountAtTime(array: interop.Pointer | interop.Reference<number>, maxCount: number, time: number): number;
getFloatArrayMaxCount(valuesArray: interop.Pointer | interop.Reference<number>, maxCount: number): number;
getFloatArrayMaxCountAtTime(array: interop.Pointer | interop.Reference<number>, maxCount: number, time: number): number;
initWithElementCount(arrayElementCount: number): this;
resetWithDoubleArrayCountAtTimesCount(valuesArray: interop.Pointer | interop.Reference<number>, valuesCount: number, timesArray: interop.Pointer | interop.Reference<number>, timesCount: number): void;
resetWithFloatArrayCountAtTimesCount(valuesArray: interop.Pointer | interop.Reference<number>, valuesCount: number, timesArray: interop.Pointer | interop.Reference<number>, timesCount: number): void;
setDoubleArrayCountAtTime(array: interop.Pointer | interop.Reference<number>, count: number, time: number): void;
setFloatArrayCountAtTime(array: interop.Pointer | interop.Reference<number>, count: number, time: number): void;
}
declare class MDLAnimatedValue extends NSObject implements NSCopying {
static alloc(): MDLAnimatedValue; // inherited from NSObject
static new(): MDLAnimatedValue; // inherited from NSObject
interpolation: MDLAnimatedValueInterpolation;
readonly keyTimes: NSArray<number>;
readonly maximumTime: number;
readonly minimumTime: number;
readonly precision: MDLDataPrecision;
readonly timeSampleCount: number;
clear(): void;
copyWithZone(zone: interop.Pointer | interop.Reference<any>): any;
getTimesMaxCount(timesArray: interop.Pointer | interop.Reference<number>, maxCount: number): number;
isAnimated(): boolean;
}
declare const enum MDLAnimatedValueInterpolation {
Constant = 0,
Linear = 1
}
declare class MDLAnimatedVector2 extends MDLAnimatedValue {
static alloc(): MDLAnimatedVector2; // inherited from NSObject
static new(): MDLAnimatedVector2; // inherited from NSObject
double2AtTime(time: number): interop.Reference<number>;
float2AtTime(time: number): interop.Reference<number>;
getDouble2ArrayMaxCount(valuesArray: interop.Pointer | interop.Reference<interop.Reference<number>>, maxCount: number): number;
getFloat2ArrayMaxCount(valuesArray: interop.Pointer | interop.Reference<interop.Reference<number>>, maxCount: number): number;
resetWithDouble2ArrayAtTimesCount(valuesArray: interop.Pointer | interop.Reference<interop.Reference<number>>, timesArray: interop.Pointer | interop.Reference<number>, count: number): void;
resetWithFloat2ArrayAtTimesCount(valuesArray: interop.Pointer | interop.Reference<interop.Reference<number>>, timesArray: interop.Pointer | interop.Reference<number>, count: number): void;
setDouble2AtTime(value: interop.Reference<number>, time: number): void;
setFloat2AtTime(value: interop.Reference<number>, time: number): void;
}
declare class MDLAnimatedVector3 extends MDLAnimatedValue {
static alloc(): MDLAnimatedVector3; // inherited from NSObject
static new(): MDLAnimatedVector3; // inherited from NSObject
double3AtTime(time: number): interop.Reference<number>;
float3AtTime(time: number): interop.Reference<number>;
getDouble3ArrayMaxCount(valuesArray: interop.Pointer | interop.Reference<interop.Reference<number>>, maxCount: number): number;
getFloat3ArrayMaxCount(valuesArray: interop.Pointer | interop.Reference<interop.Reference<number>>, maxCount: number): number;
resetWithDouble3ArrayAtTimesCount(valuesArray: interop.Pointer | interop.Reference<interop.Reference<number>>, timesArray: interop.Pointer | interop.Reference<number>, count: number): void;
resetWithFloat3ArrayAtTimesCount(valuesArray: interop.Pointer | interop.Reference<interop.Reference<number>>, timesArray: interop.Pointer | interop.Reference<number>, count: number): void;
setDouble3AtTime(value: interop.Reference<number>, time: number): void;
setFloat3AtTime(value: interop.Reference<number>, time: number): void;
}
declare class MDLAnimatedVector3Array extends MDLAnimatedValue {
static alloc(): MDLAnimatedVector3Array; // inherited from NSObject
static new(): MDLAnimatedVector3Array; // inherited from NSObject
readonly elementCount: number;
constructor(o: { elementCount: number; });
getDouble3ArrayMaxCount(valuesArray: interop.Pointer | interop.Reference<interop.Reference<number>>, maxCount: number): number;
getDouble3ArrayMaxCountAtTime(array: interop.Pointer | interop.Reference<interop.Reference<number>>, maxCount: number, time: number): number;
getFloat3ArrayMaxCount(valuesArray: interop.Pointer | interop.Reference<interop.Reference<number>>, maxCount: number): number;
getFloat3ArrayMaxCountAtTime(array: interop.Pointer | interop.Reference<interop.Reference<number>>, maxCount: number, time: number): number;
initWithElementCount(arrayElementCount: number): this;
resetWithDouble3ArrayCountAtTimesCount(valuesArray: interop.Pointer | interop.Reference<interop.Reference<number>>, valuesCount: number, timesArray: interop.Pointer | interop.Reference<number>, timesCount: number): void;
resetWithFloat3ArrayCountAtTimesCount(valuesArray: interop.Pointer | interop.Reference<interop.Reference<number>>, valuesCount: number, timesArray: interop.Pointer | interop.Reference<number>, timesCount: number): void;
setDouble3ArrayCountAtTime(array: interop.Pointer | interop.Reference<interop.Reference<number>>, count: number, time: number): void;
setFloat3ArrayCountAtTime(array: interop.Pointer | interop.Reference<interop.Reference<number>>, count: number, time: number): void;
}
declare class MDLAnimatedVector4 extends MDLAnimatedValue {
static alloc(): MDLAnimatedVector4; // inherited from NSObject
static new(): MDLAnimatedVector4; // inherited from NSObject
double4AtTime(time: number): interop.Reference<number>;
float4AtTime(time: number): interop.Reference<number>;
getDouble4ArrayMaxCount(valuesArray: interop.Pointer | interop.Reference<interop.Reference<number>>, maxCount: number): number;
getFloat4ArrayMaxCount(valuesArray: interop.Pointer | interop.Reference<interop.Reference<number>>, maxCount: number): number;
resetWithDouble4ArrayAtTimesCount(valuesArray: interop.Pointer | interop.Reference<interop.Reference<number>>, timesArray: interop.Pointer | interop.Reference<number>, count: number): void;
resetWithFloat4ArrayAtTimesCount(valuesArray: interop.Pointer | interop.Reference<interop.Reference<number>>, timesArray: interop.Pointer | interop.Reference<number>, count: number): void;
setDouble4AtTime(value: interop.Reference<number>, time: number): void;
setFloat4AtTime(value: interop.Reference<number>, time: number): void;
}
declare class MDLAnimationBindComponent extends NSObject implements MDLComponent, NSCopying {
static alloc(): MDLAnimationBindComponent; // inherited from NSObject
static new(): MDLAnimationBindComponent; // inherited from NSObject
geometryBindTransform: simd_double4x4;
jointAnimation: MDLJointAnimation;
jointPaths: NSArray<string>;
skeleton: MDLSkeleton;
readonly debugDescription: string; // inherited from NSObjectProtocol
readonly description: string; // inherited from NSObjectProtocol
readonly hash: number; // inherited from NSObjectProtocol
readonly isProxy: boolean; // inherited from NSObjectProtocol
readonly superclass: typeof NSObject; // inherited from NSObjectProtocol
readonly // inherited from NSObjectProtocol
class(): typeof NSObject;
conformsToProtocol(aProtocol: any /* Protocol */): boolean;
copyWithZone(zone: interop.Pointer | interop.Reference<any>): any;
isEqual(object: any): boolean;
isKindOfClass(aClass: typeof NSObject): boolean;
isMemberOfClass(aClass: typeof NSObject): boolean;
performSelector(aSelector: string): any;
performSelectorWithObject(aSelector: string, object: any): any;
performSelectorWithObjectWithObject(aSelector: string, object1: any, object2: any): any;
respondsToSelector(aSelector: string): boolean;
retainCount(): number;
self(): this;
}
declare class MDLAreaLight extends MDLPhysicallyPlausibleLight {
static alloc(): MDLAreaLight; // inherited from NSObject
static lightWithSCNLight(scnLight: SCNLight): MDLAreaLight; // inherited from MDLLight
static new(): MDLAreaLight; // inherited from NSObject
static objectWithSCNNode(scnNode: SCNNode): MDLAreaLight; // inherited from MDLObject
static objectWithSCNNodeBufferAllocator(scnNode: SCNNode, bufferAllocator: MDLMeshBufferAllocator): MDLAreaLight; // inherited from MDLObject
areaRadius: number;
aspect: number;
superEllipticPower: interop.Reference<number>;
}
declare class MDLAsset extends NSObject implements NSCopying, NSFastEnumeration {
static alloc(): MDLAsset; // inherited from NSObject
static assetWithSCNScene(scnScene: SCNScene): MDLAsset;
static assetWithSCNSceneBufferAllocator(scnScene: SCNScene, bufferAllocator: MDLMeshBufferAllocator): MDLAsset;
static canExportFileExtension(extension: string): boolean;
static canImportFileExtension(extension: string): boolean;
static new(): MDLAsset; // inherited from NSObject
static placeLightProbesWithDensityHeuristicUsingIrradianceDataSource(value: number, type: MDLProbePlacement, dataSource: MDLLightProbeIrradianceDataSource): NSArray<MDLLightProbe>;
readonly URL: NSURL;
animations: MDLObjectContainerComponent;
readonly boundingBox: MDLAxisAlignedBoundingBox;
readonly bufferAllocator: MDLMeshBufferAllocator;
readonly count: number;
endTime: number;
frameInterval: number;
masters: MDLObjectContainerComponent;
resolver: MDLAssetResolver;
startTime: number;
upAxis: interop.Reference<number>;
readonly vertexDescriptor: MDLVertexDescriptor;
[index: number]: MDLObject;
[Symbol.iterator](): Iterator<any>;
constructor(o: { bufferAllocator: MDLMeshBufferAllocator; });
constructor(o: { URL: NSURL; });
constructor(o: { URL: NSURL; vertexDescriptor: MDLVertexDescriptor; bufferAllocator: MDLMeshBufferAllocator; });
constructor(o: { URL: NSURL; vertexDescriptor: MDLVertexDescriptor; bufferAllocator: MDLMeshBufferAllocator; preserveTopology: boolean; });
addObject(object: MDLObject): void;
boundingBoxAtTime(time: number): MDLAxisAlignedBoundingBox;
childObjectsOfClass(objectClass: typeof NSObject): NSArray<MDLObject>;
copyWithZone(zone: interop.Pointer | interop.Reference<any>): any;
exportAssetToURL(URL: NSURL): boolean;
exportAssetToURLError(URL: NSURL): boolean;
initWithBufferAllocator(bufferAllocator: MDLMeshBufferAllocator): this;
initWithURL(URL: NSURL): this;
initWithURLVertexDescriptorBufferAllocator(URL: NSURL, vertexDescriptor: MDLVertexDescriptor, bufferAllocator: MDLMeshBufferAllocator): this;
initWithURLVertexDescriptorBufferAllocatorPreserveTopologyError(URL: NSURL, vertexDescriptor: MDLVertexDescriptor, bufferAllocator: MDLMeshBufferAllocator, preserveTopology: boolean): this;
loadTextures(): void;
objectAtIndex(index: number): MDLObject;
objectAtIndexedSubscript(index: number): MDLObject;
objectAtPath(path: string): MDLObject;
removeObject(object: MDLObject): void;
}
interface MDLAssetResolver extends NSObjectProtocol {
canResolveAssetNamed(name: string): boolean;
resolveAssetNamed(name: string): NSURL;
}
declare var MDLAssetResolver: {
prototype: MDLAssetResolver;
};
interface MDLAxisAlignedBoundingBox {
maxBounds: interop.Reference<number>;
minBounds: interop.Reference<number>;
}
declare var MDLAxisAlignedBoundingBox: interop.StructType<MDLAxisAlignedBoundingBox>;
declare class MDLBundleAssetResolver extends NSObject implements MDLAssetResolver {
static alloc(): MDLBundleAssetResolver; // inherited from NSObject
static new(): MDLBundleAssetResolver; // inherited from NSObject
path: string;
readonly debugDescription: string; // inherited from NSObjectProtocol
readonly description: string; // inherited from NSObjectProtocol
readonly hash: number; // inherited from NSObjectProtocol
readonly isProxy: boolean; // inherited from NSObjectProtocol
readonly superclass: typeof NSObject; // inherited from NSObjectProtocol
readonly // inherited from NSObjectProtocol
constructor(o: { bundle: string; });
canResolveAssetNamed(name: string): boolean;
class(): typeof NSObject;
conformsToProtocol(aProtocol: any /* Protocol */): boolean;
initWithBundle(path: string): this;
isEqual(object: any): boolean;
isKindOfClass(aClass: typeof NSObject): boolean;
isMemberOfClass(aClass: typeof NSObject): boolean;
performSelector(aSelector: string): any;
performSelectorWithObject(aSelector: string, object: any): any;
performSelectorWithObjectWithObject(aSelector: string, object1: any, object2: any): any;
resolveAssetNamed(name: string): NSURL;
respondsToSelector(aSelector: string): boolean;
retainCount(): number;
self(): this;
}
declare class MDLCamera extends MDLObject {
static alloc(): MDLCamera; // inherited from NSObject
static cameraWithSCNCamera(scnCamera: SCNCamera): MDLCamera;
static new(): MDLCamera; // inherited from NSObject
static objectWithSCNNode(scnNode: SCNNode): MDLCamera; // inherited from MDLObject
static objectWithSCNNodeBufferAllocator(scnNode: SCNNode, bufferAllocator: MDLMeshBufferAllocator): MDLCamera; // inherited from MDLObject
apertureBladeCount: number;
barrelDistortion: number;
chromaticAberration: number;
exposure: interop.Reference<number>;
exposureCompression: interop.Reference<number>;
fStop: number;
farVisibilityDistance: number;
fieldOfView: number;
fisheyeDistortion: number;
flash: interop.Reference<number>;
focalLength: number;
focusDistance: number;
maximumCircleOfConfusion: number;
nearVisibilityDistance: number;
opticalVignetting: number;
projection: MDLCameraProjection;
readonly projectionMatrix: simd_float4x4;
sensorAspect: number;
sensorEnlargement: interop.Reference<number>;
sensorShift: interop.Reference<number>;
sensorVerticalAperture: number;
shutterOpenInterval: number;
worldToMetersConversionScale: number;
bokehKernelWithSize(size: interop.Reference<number>): MDLTexture;
frameBoundingBoxSetNearAndFar(boundingBox: MDLAxisAlignedBoundingBox, setNearAndFar: boolean): void;
lookAt(focusPosition: interop.Reference<number>): void;
lookAtFrom(focusPosition: interop.Reference<number>, cameraPosition: interop.Reference<number>): void;
rayToForViewPort(pixel: interop.Reference<number>, size: interop.Reference<number>): interop.Reference<number>;
}
declare const enum MDLCameraProjection {
Perspective = 0,
Orthographic = 1
}
declare class MDLCheckerboardTexture extends MDLTexture {
static alloc(): MDLCheckerboardTexture; // inherited from NSObject
static irradianceTextureCubeWithTextureNameDimensions(texture: MDLTexture, name: string, dimensions: interop.Reference<number>): MDLCheckerboardTexture; // inherited from MDLTexture
static irradianceTextureCubeWithTextureNameDimensionsRoughness(texture: MDLTexture, name: string, dimensions: interop.Reference<number>, roughness: number): MDLCheckerboardTexture; // inherited from MDLTexture
static new(): MDLCheckerboardTexture; // inherited from NSObject
static textureCubeWithImagesNamed(names: NSArray<string> | string[]): MDLCheckerboardTexture; // inherited from MDLTexture
static textureCubeWithImagesNamedBundle(names: NSArray<string> | string[], bundleOrNil: NSBundle): MDLCheckerboardTexture; // inherited from MDLTexture
static textureNamed(name: string): MDLCheckerboardTexture; // inherited from MDLTexture
static textureNamedAssetResolver(name: string, resolver: MDLAssetResolver): MDLCheckerboardTexture; // inherited from MDLTexture
static textureNamedBundle(name: string, bundleOrNil: NSBundle): MDLCheckerboardTexture; // inherited from MDLTexture
color1: any;
color2: any;
divisions: number;
constructor(o: { divisions: number; name: string; dimensions: interop.Reference<number>; channelCount: number; channelEncoding: MDLTextureChannelEncoding; color1: any; color2: any; });
initWithDivisionsNameDimensionsChannelCountChannelEncodingColor1Color2(divisions: number, name: string, dimensions: interop.Reference<number>, channelCount: number, channelEncoding: MDLTextureChannelEncoding, color1: any, color2: any): this;
}
declare class MDLColorSwatchTexture extends MDLTexture {
static alloc(): MDLColorSwatchTexture; // inherited from NSObject
static irradianceTextureCubeWithTextureNameDimensions(texture: MDLTexture, name: string, dimensions: interop.Reference<number>): MDLColorSwatchTexture; // inherited from MDLTexture
static irradianceTextureCubeWithTextureNameDimensionsRoughness(texture: MDLTexture, name: string, dimensions: interop.Reference<number>, roughness: number): MDLColorSwatchTexture; // inherited from MDLTexture
static new(): MDLColorSwatchTexture; // inherited from NSObject
static textureCubeWithImagesNamed(names: NSArray<string> | string[]): MDLColorSwatchTexture; // inherited from MDLTexture
static textureCubeWithImagesNamedBundle(names: NSArray<string> | string[], bundleOrNil: NSBundle): MDLColorSwatchTexture; // inherited from MDLTexture
static textureNamed(name: string): MDLColorSwatchTexture; // inherited from MDLTexture
static textureNamedAssetResolver(name: string, resolver: MDLAssetResolver): MDLColorSwatchTexture; // inherited from MDLTexture
static textureNamedBundle(name: string, bundleOrNil: NSBundle): MDLColorSwatchTexture; // inherited from MDLTexture
constructor(o: { colorGradientFrom: any; toColor: any; name: string; textureDimensions: interop.Reference<number>; });
constructor(o: { colorTemperatureGradientFrom: number; toColorTemperature: number; name: string; textureDimensions: interop.Reference<number>; });
initWithColorGradientFromToColorNameTextureDimensions(color1: any, color2: any, name: string, textureDimensions: interop.Reference<number>): this;
initWithColorTemperatureGradientFromToColorTemperatureNameTextureDimensions(colorTemperature1: number, colorTemperature2: number, name: string, textureDimensions: interop.Reference<number>): this;
}
interface MDLComponent extends NSObjectProtocol {
}
declare var MDLComponent: {
prototype: MDLComponent;
};
declare const enum MDLDataPrecision {
Undefined = 0,
Float = 1,
Double = 2
}
declare const enum MDLGeometryType {
Points = 0,
Lines = 1,
Triangles = 2,
TriangleStrips = 3,
Quads = 4,
VariableTopology = 5
}
declare const enum MDLIndexBitDepth {
Invalid = 0,
UInt8 = 8,
Uint8 = 8,
UInt16 = 16,
Uint16 = 16,
UInt32 = 32,
Uint32 = 32
}
interface MDLJointAnimation {
}
declare var MDLJointAnimation: {
prototype: MDLJointAnimation;
};
declare class MDLLight extends MDLObject {
static alloc(): MDLLight; // inherited from NSObject
static lightWithSCNLight(scnLight: SCNLight): MDLLight;
static new(): MDLLight; // inherited from NSObject
static objectWithSCNNode(scnNode: SCNNode): MDLLight; // inherited from MDLObject
static objectWithSCNNodeBufferAllocator(scnNode: SCNNode, bufferAllocator: MDLMeshBufferAllocator): MDLLight; // inherited from MDLObject
colorSpace: string;
lightType: MDLLightType;
irradianceAtPoint(point: interop.Reference<number>): any;
irradianceAtPointColorSpace(point: interop.Reference<number>, colorSpace: any): any;
}
declare class MDLLightProbe extends MDLLight {
static alloc(): MDLLightProbe; // inherited from NSObject
static lightProbeWithTextureSizeForLocationLightsToConsiderObjectsToConsiderReflectiveCubemapIrradianceCubemap(textureSize: number, transform: MDLTransform, lightsToConsider: NSArray<MDLLight> | MDLLight[], objectsToConsider: NSArray<MDLObject> | MDLObject[], reflectiveCubemap: MDLTexture, irradianceCubemap: MDLTexture): MDLLightProbe;
static lightWithSCNLight(scnLight: SCNLight): MDLLightProbe; // inherited from MDLLight
static new(): MDLLightProbe; // inherited from NSObject
static objectWithSCNNode(scnNode: SCNNode): MDLLightProbe; // inherited from MDLObject
static objectWithSCNNodeBufferAllocator(scnNode: SCNNode, bufferAllocator: MDLMeshBufferAllocator): MDLLightProbe; // inherited from MDLObject
readonly irradianceTexture: MDLTexture;
readonly reflectiveTexture: MDLTexture;
readonly sphericalHarmonicsCoefficients: NSData;
readonly sphericalHarmonicsLevel: number;
constructor(o: { reflectiveTexture: MDLTexture; irradianceTexture: MDLTexture; });
generateSphericalHarmonicsFromIrradiance(sphericalHarmonicsLevel: number): void;
initWithReflectiveTextureIrradianceTexture(reflectiveTexture: MDLTexture, irradianceTexture: MDLTexture): this;
}
interface MDLLightProbeIrradianceDataSource extends NSObjectProtocol {
boundingBox: MDLAxisAlignedBoundingBox;
sphericalHarmonicsLevel?: number;
sphericalHarmonicsCoefficientsAtPosition?(position: interop.Reference<number>): NSData;
}
declare var MDLLightProbeIrradianceDataSource: {
prototype: MDLLightProbeIrradianceDataSource;
};
declare const enum MDLLightType {
Unknown = 0,
Ambient = 1,
Directional = 2,
Spot = 3,
Point = 4,
Linear = 5,
DiscArea = 6,
RectangularArea = 7,
SuperElliptical = 8,
Photometric = 9,
Probe = 10,
Environment = 11
}
declare class MDLMaterial extends NSObject implements MDLNamed, NSFastEnumeration {
static alloc(): MDLMaterial; // inherited from NSObject
static materialWithSCNMaterial(scnMaterial: SCNMaterial): MDLMaterial;
static new(): MDLMaterial; // inherited from NSObject
baseMaterial: MDLMaterial;
readonly count: number;
materialFace: MDLMaterialFace;
readonly scatteringFunction: MDLScatteringFunction;
name: string; // inherited from MDLNamed
[index: number]: MDLMaterialProperty;
[Symbol.iterator](): Iterator<any>;
constructor(o: { name: string; scatteringFunction: MDLScatteringFunction; });
initWithNameScatteringFunction(name: string, scatteringFunction: MDLScatteringFunction): this;
loadTexturesUsingResolver(resolver: MDLAssetResolver): void;
objectAtIndexedSubscript(idx: number): MDLMaterialProperty;
objectForKeyedSubscript(name: string): MDLMaterialProperty;
propertiesWithSemantic(semantic: MDLMaterialSemantic): NSArray<MDLMaterialProperty>;
propertyNamed(name: string): MDLMaterialProperty;
propertyWithSemantic(semantic: MDLMaterialSemantic): MDLMaterialProperty;
removeAllProperties(): void;
removeProperty(property: MDLMaterialProperty): void;
resolveTexturesWithResolver(resolver: MDLAssetResolver): void;
setProperty(property: MDLMaterialProperty): void;
}
declare const enum MDLMaterialFace {
Front = 0,
Back = 1,
DoubleSided = 2
}
declare const enum MDLMaterialMipMapFilterMode {
Nearest = 0,
Linear = 1
}
declare class MDLMaterialProperty extends NSObject implements MDLNamed, NSCopying {
static alloc(): MDLMaterialProperty; // inherited from NSObject
static new(): MDLMaterialProperty; // inherited from NSObject
URLValue: NSURL;
color: any;
float2Value: interop.Reference<number>;
float3Value: interop.Reference<number>;
float4Value: interop.Reference<number>;
floatValue: number;
luminance: number;
matrix4x4: simd_float4x4;
semantic: MDLMaterialSemantic;
stringValue: string;
textureSamplerValue: MDLTextureSampler;
type: MDLMaterialPropertyType;
name: string; // inherited from MDLNamed
constructor(o: { name: string; semantic: MDLMaterialSemantic; });
constructor(o: { name: string; semantic: MDLMaterialSemantic; color: any; });
constructor(o: { name: string; semantic: MDLMaterialSemantic; float: number; });
constructor(o: { name: string; semantic: MDLMaterialSemantic; float2: interop.Reference<number>; });
constructor(o: { name: string; semantic: MDLMaterialSemantic; float3: interop.Reference<number>; });
constructor(o: { name: string; semantic: MDLMaterialSemantic; float4: interop.Reference<number>; });
constructor(o: { name: string; semantic: MDLMaterialSemantic; matrix4x4: simd_float4x4; });
constructor(o: { name: string; semantic: MDLMaterialSemantic; string: string; });
constructor(o: { name: string; semantic: MDLMaterialSemantic; textureSampler: MDLTextureSampler; });
constructor(o: { name: string; semantic: MDLMaterialSemantic; URL: NSURL; });
copyWithZone(zone: interop.Pointer | interop.Reference<any>): any;
initWithNameSemantic(name: string, semantic: MDLMaterialSemantic): this;
initWithNameSemanticColor(name: string, semantic: MDLMaterialSemantic, color: any): this;
initWithNameSemanticFloat(name: string, semantic: MDLMaterialSemantic, value: number): this;
initWithNameSemanticFloat2(name: string, semantic: MDLMaterialSemantic, value: interop.Reference<number>): this;
initWithNameSemanticFloat3(name: string, semantic: MDLMaterialSemantic, value: interop.Reference<number>): this;
initWithNameSemanticFloat4(name: string, semantic: MDLMaterialSemantic, value: interop.Reference<number>): this;
initWithNameSemanticMatrix4x4(name: string, semantic: MDLMaterialSemantic, value: simd_float4x4): this;
initWithNameSemanticString(name: string, semantic: MDLMaterialSemantic, string: string): this;
initWithNameSemanticTextureSampler(name: string, semantic: MDLMaterialSemantic, textureSampler: MDLTextureSampler): this;
initWithNameSemanticURL(name: string, semantic: MDLMaterialSemantic, URL: NSURL): this;
setProperties(property: MDLMaterialProperty): void;
}
declare class MDLMaterialPropertyConnection extends NSObject implements MDLNamed {
static alloc(): MDLMaterialPropertyConnection; // inherited from NSObject
static new(): MDLMaterialPropertyConnection; // inherited from NSObject
readonly input: MDLMaterialProperty;
readonly output: MDLMaterialProperty;
name: string; // inherited from MDLNamed
constructor(o: { output: MDLMaterialProperty; input: MDLMaterialProperty; });
initWithOutputInput(output: MDLMaterialProperty, input: MDLMaterialProperty): this;
}
declare class MDLMaterialPropertyGraph extends MDLMaterialPropertyNode {
static alloc(): MDLMaterialPropertyGraph; // inherited from NSObject
static new(): MDLMaterialPropertyGraph; // inherited from NSObject
readonly connections: NSArray<MDLMaterialPropertyConnection>;
readonly nodes: NSArray<MDLMaterialPropertyNode>;
constructor(o: { nodes: NSArray<MDLMaterialPropertyNode> | MDLMaterialPropertyNode[]; connections: NSArray<MDLMaterialPropertyConnection> | MDLMaterialPropertyConnection[]; });
evaluate(): void;
initWithNodesConnections(nodes: NSArray<MDLMaterialPropertyNode> | MDLMaterialPropertyNode[], connections: NSArray<MDLMaterialPropertyConnection> | MDLMaterialPropertyConnection[]): this;
}
declare class MDLMaterialPropertyNode extends NSObject implements MDLNamed {
static alloc(): MDLMaterialPropertyNode; // inherited from NSObject
static new(): MDLMaterialPropertyNode; // inherited from NSObject
evaluationFunction: (p1: MDLMaterialPropertyNode) => void;
readonly inputs: NSArray<MDLMaterialProperty>;
readonly outputs: NSArray<MDLMaterialProperty>;
name: string; // inherited from MDLNamed
constructor(o: { inputs: NSArray<MDLMaterialProperty> | MDLMaterialProperty[]; outputs: NSArray<MDLMaterialProperty> | MDLMaterialProperty[]; evaluationFunction: (p1: MDLMaterialPropertyNode) => void; });
initWithInputsOutputsEvaluationFunction(inputs: NSArray<MDLMaterialProperty> | MDLMaterialProperty[], outputs: NSArray<MDLMaterialProperty> | MDLMaterialProperty[], _function: (p1: MDLMaterialPropertyNode) => void): this;
}
declare const enum MDLMaterialPropertyType {
None = 0,
String = 1,
URL = 2,
Texture = 3,
Color = 4,
Float = 5,
Float2 = 6,
Float3 = 7,
Float4 = 8,
Matrix44 = 9
}
declare const enum MDLMaterialSemantic {
BaseColor = 0,
Subsurface = 1,
Metallic = 2,
Specular = 3,
SpecularExponent = 4,
SpecularTint = 5,
Roughness = 6,
Anisotropic = 7,
AnisotropicRotation = 8,
Sheen = 9,
SheenTint = 10,
Clearcoat = 11,
ClearcoatGloss = 12,
Emission = 13,
Bump = 14,
Opacity = 15,
InterfaceIndexOfRefraction = 16,
MaterialIndexOfRefraction = 17,
ObjectSpaceNormal = 18,
TangentSpaceNormal = 19,
Displacement = 20,
DisplacementScale = 21,
AmbientOcclusion = 22,
AmbientOcclusionScale = 23,
None = 32768,
UserDefined = 32769
}
declare const enum MDLMaterialTextureFilterMode {
Nearest = 0,
Linear = 1
}
declare const enum MDLMaterialTextureWrapMode {
Clamp = 0,
Repeat = 1,
Mirror = 2
}
declare class MDLMatrix4x4Array extends NSObject implements NSCopying {
static alloc(): MDLMatrix4x4Array; // inherited from NSObject
static new(): MDLMatrix4x4Array; // inherited from NSObject
readonly elementCount: number;
readonly precision: MDLDataPrecision;
constructor(o: { elementCount: number; });
clear(): void;
copyWithZone(zone: interop.Pointer | interop.Reference<any>): any;
getDouble4x4ArrayMaxCount(valuesArray: interop.Pointer | interop.Reference<simd_double4x4>, maxCount: number): number;
getFloat4x4ArrayMaxCount(valuesArray: interop.Pointer | interop.Reference<simd_float4x4>, maxCount: number): number;
initWithElementCount(arrayElementCount: number): this;
setDouble4x4ArrayCount(valuesArray: interop.Pointer | interop.Reference<simd_double4x4>, count: number): void;
setFloat4x4ArrayCount(valuesArray: interop.Pointer | interop.Reference<simd_float4x4>, count: number): void;
}
declare class MDLMesh extends MDLObject {
static alloc(): MDLMesh; // inherited from NSObject
static meshWithSCNGeometry(scnGeometry: SCNGeometry): MDLMesh;
static meshWithSCNGeometryBufferAllocator(scnGeometry: SCNGeometry, bufferAllocator: MDLMeshBufferAllocator): MDLMesh;
static new(): MDLMesh; // inherited from NSObject
static newBoxWithDimensionsSegmentsGeometryTypeInwardNormalsAllocator(dimensions: interop.Reference<number>, segments: interop.Reference<number>, geometryType: MDLGeometryType, inwardNormals: boolean, allocator: MDLMeshBufferAllocator): MDLMesh;
static newCapsuleWithHeightRadiiRadialSegmentsVerticalSegmentsHemisphereSegmentsGeometryTypeInwardNormalsAllocator(height: number, radii: interop.Reference<number>, radialSegments: number, verticalSegments: number, hemisphereSegments: number, geometryType: MDLGeometryType, inwardNormals: boolean, allocator: MDLMeshBufferAllocator): MDLMesh;
static newCylinderWithHeightRadiiRadialSegmentsVerticalSegmentsGeometryTypeInwardNormalsAllocator(height: number, radii: interop.Reference<number>, radialSegments: number, verticalSegments: number, geometryType: MDLGeometryType, inwardNormals: boolean, allocator: MDLMeshBufferAllocator): MDLMesh;
static newEllipsoidWithRadiiRadialSegmentsVerticalSegmentsGeometryTypeInwardNormalsHemisphereAllocator(radii: interop.Reference<number>, radialSegments: number, verticalSegments: number, geometryType: MDLGeometryType, inwardNormals: boolean, hemisphere: boolean, allocator: MDLMeshBufferAllocator): MDLMesh;
static newEllipticalConeWithHeightRadiiRadialSegmentsVerticalSegmentsGeometryTypeInwardNormalsAllocator(height: number, radii: interop.Reference<number>, radialSegments: number, verticalSegments: number, geometryType: MDLGeometryType, inwardNormals: boolean, allocator: MDLMeshBufferAllocator): MDLMesh;
static newIcosahedronWithRadiusInwardNormalsAllocator(radius: number, inwardNormals: boolean, allocator: MDLMeshBufferAllocator): MDLMesh;
static newIcosahedronWithRadiusInwardNormalsGeometryTypeAllocator(radius: number, inwardNormals: boolean, geometryType: MDLGeometryType, allocator: MDLMeshBufferAllocator): MDLMesh;
static newPlaneWithDimensionsSegmentsGeometryTypeAllocator(dimensions: interop.Reference<number>, segments: interop.Reference<number>, geometryType: MDLGeometryType, allocator: MDLMeshBufferAllocator): MDLMesh;
static newSubdividedMeshSubmeshIndexSubdivisionLevels(mesh: MDLMesh, submeshIndex: number, subdivisionLevels: number): MDLMesh;
static objectWithSCNNode(scnNode: SCNNode): MDLMesh; // inherited from MDLObject
static objectWithSCNNodeBufferAllocator(scnNode: SCNNode, bufferAllocator: MDLMeshBufferAllocator): MDLMesh; // inherited from MDLObject
readonly allocator: MDLMeshBufferAllocator;
readonly boundingBox: MDLAxisAlignedBoundingBox;
submeshes: NSMutableArray<MDLSubmesh>;
vertexBuffers: NSArray<MDLMeshBuffer>;
vertexCount: number;
vertexDescriptor: MDLVertexDescriptor;
constructor(o: { boxWithExtent: interop.Reference<number>; segments: interop.Reference<number>; inwardNormals: boolean; geometryType: MDLGeometryType; allocator: MDLMeshBufferAllocator; });
constructor(o: { capsuleWithExtent: interop.Reference<number>; cylinderSegments: interop.Reference<number>; hemisphereSegments: number; inwardNormals: boolean; geometryType: MDLGeometryType; allocator: MDLMeshBufferAllocator; });
constructor(o: { coneWithExtent: interop.Reference<number>; segments: interop.Reference<number>; inwardNormals: boolean; cap: boolean; geometryType: MDLGeometryType; allocator: MDLMeshBufferAllocator; });
constructor(o: { cylinderWithExtent: interop.Reference<number>; segments: interop.Reference<number>; inwardNormals: boolean; topCap: boolean; bottomCap: boolean; geometryType: MDLGeometryType; allocator: MDLMeshBufferAllocator; });
constructor(o: { hemisphereWithExtent: interop.Reference<number>; segments: interop.Reference<number>; inwardNormals: boolean; cap: boolean; geometryType: MDLGeometryType; allocator: MDLMeshBufferAllocator; });
constructor(o: { icosahedronWithExtent: interop.Reference<number>; inwardNormals: boolean; geometryType: MDLGeometryType; allocator: MDLMeshBufferAllocator; });
constructor(o: { meshBySubdividingMesh: MDLMesh; submeshIndex: number; subdivisionLevels: number; allocator: MDLMeshBufferAllocator; });
constructor(o: { planeWithExtent: interop.Reference<number>; segments: interop.Reference<number>; geometryType: MDLGeometryType; allocator: MDLMeshBufferAllocator; });
constructor(o: { sphereWithExtent: interop.Reference<number>; segments: interop.Reference<number>; inwardNormals: boolean; geometryType: MDLGeometryType; allocator: MDLMeshBufferAllocator; });
constructor(o: { bufferAllocator: MDLMeshBufferAllocator; });
constructor(o: { vertexBuffer: MDLMeshBuffer; vertexCount: number; descriptor: MDLVertexDescriptor; submeshes: NSArray<MDLSubmesh> | MDLSubmesh[]; });
constructor(o: { vertexBuffers: NSArray<MDLMeshBuffer> | MDLMeshBuffer[]; vertexCount: number; descriptor: MDLVertexDescriptor; submeshes: NSArray<MDLSubmesh> | MDLSubmesh[]; });
addAttributeWithNameFormat(name: string, format: MDLVertexFormat): void;
addAttributeWithNameFormatTypeDataStride(name: string, format: MDLVertexFormat, type: string, data: NSData, stride: number): void;
addAttributeWithNameFormatTypeDataStrideTime(name: string, format: MDLVertexFormat, type: string, data: NSData, stride: number, time: number): void;
addNormalsWithAttributeNamedCreaseThreshold(attributeName: string, creaseThreshold: number): void;
addOrthTanBasisForTextureCoordinateAttributeNamedNormalAttributeNamedTangentAttributeNamed(textureCoordinateAttributeName: string, normalAttributeName: string, tangentAttributeName: string): void;
addTangentBasisForTextureCoordinateAttributeNamedNormalAttributeNamedTangentAttributeNamed(textureCoordinateAttributeName: string, normalAttributeName: string, tangentAttributeName: string): void;
addTangentBasisForTextureCoordinateAttributeNamedTangentAttributeNamedBitangentAttributeNamed(textureCoordinateAttributeName: string, tangentAttributeName: string, bitangentAttributeName: string): void;
addUnwrappedTextureCoordinatesForAttributeNamed(textureCoordinateAttributeName: string): void;
flipTextureCoordinatesInAttributeNamed(textureCoordinateAttributeName: string): void;
generateAmbientOcclusionTextureWithQualityAttenuationFactorObjectsToConsiderVertexAttributeNamedMaterialPropertyNamed(bakeQuality: number, attenuationFactor: number, objectsToConsider: NSArray<MDLObject> | MDLObject[], vertexAttributeName: string, materialPropertyName: string): boolean;
generateAmbientOcclusionTextureWithSizeRaysPerSampleAttenuationFactorObjectsToConsiderVertexAttributeNamedMaterialPropertyNamed(textureSize: interop.Reference<number>, raysPerSample: number, attenuationFactor: number, objectsToConsider: NSArray<MDLObject> | MDLObject[], vertexAttributeName: string, materialPropertyName: string): boolean;
generateAmbientOcclusionVertexColorsWithQualityAttenuationFactorObjectsToConsiderVertexAttributeNamed(bakeQuality: number, attenuationFactor: number, objectsToConsider: NSArray<MDLObject> | MDLObject[], vertexAttributeName: string): boolean;
generateAmbientOcclusionVertexColorsWithRaysPerSampleAttenuationFactorObjectsToConsiderVertexAttributeNamed(raysPerSample: number, attenuationFactor: number, objectsToConsider: NSArray<MDLObject> | MDLObject[], vertexAttributeName: string): boolean;
generateLightMapTextureWithQualityLightsToConsiderObjectsToConsiderVertexAttributeNamedMaterialPropertyNamed(bakeQuality: number, lightsToConsider: NSArray<MDLLight> | MDLLight[], objectsToConsider: NSArray<MDLObject> | MDLObject[], vertexAttributeName: string, materialPropertyName: string): boolean;
generateLightMapTextureWithTextureSizeLightsToConsiderObjectsToConsiderVertexAttributeNamedMaterialPropertyNamed(textureSize: interop.Reference<number>, lightsToConsider: NSArray<MDLLight> | MDLLight[], objectsToConsider: NSArray<MDLObject> | MDLObject[], vertexAttributeName: string, materialPropertyName: string): boolean;
generateLightMapVertexColorsWithLightsToConsiderObjectsToConsiderVertexAttributeNamed(lightsToConsider: NSArray<MDLLight> | MDLLight[], objectsToConsider: NSArray<MDLObject> | MDLObject[], vertexAttributeName: string): boolean;
initBoxWithExtentSegmentsInwardNormalsGeometryTypeAllocator(extent: interop.Reference<number>, segments: interop.Reference<number>, inwardNormals: boolean, geometryType: MDLGeometryType, allocator: MDLMeshBufferAllocator): this;
initCapsuleWithExtentCylinderSegmentsHemisphereSegmentsInwardNormalsGeometryTypeAllocator(extent: interop.Reference<number>, segments: interop.Reference<number>, hemisphereSegments: number, inwardNormals: boolean, geometryType: MDLGeometryType, allocator: MDLMeshBufferAllocator): this;
initConeWithExtentSegmentsInwardNormalsCapGeometryTypeAllocator(extent: interop.Reference<number>, segments: interop.Reference<number>, inwardNormals: boolean, cap: boolean, geometryType: MDLGeometryType, allocator: MDLMeshBufferAllocator): this;
initCylinderWithExtentSegmentsInwardNormalsTopCapBottomCapGeometryTypeAllocator(extent: interop.Reference<number>, segments: interop.Reference<number>, inwardNormals: boolean, topCap: boolean, bottomCap: boolean, geometryType: MDLGeometryType, allocator: MDLMeshBufferAllocator): this;
initHemisphereWithExtentSegmentsInwardNormalsCapGeometryTypeAllocator(extent: interop.Reference<number>, segments: interop.Reference<number>, inwardNormals: boolean, cap: boolean, geometryType: MDLGeometryType, allocator: MDLMeshBufferAllocator): this;
initIcosahedronWithExtentInwardNormalsGeometryTypeAllocator(extent: interop.Reference<number>, inwardNormals: boolean, geometryType: MDLGeometryType, allocator: MDLMeshBufferAllocator): this;
initMeshBySubdividingMeshSubmeshIndexSubdivisionLevelsAllocator(mesh: MDLMesh, submeshIndex: number, subdivisionLevels: number, allocator: MDLMeshBufferAllocator): this;
initPlaneWithExtentSegmentsGeometryTypeAllocator(extent: interop.Reference<number>, segments: interop.Reference<number>, geometryType: MDLGeometryType, allocator: MDLMeshBufferAllocator): this;
initSphereWithExtentSegmentsInwardNormalsGeometryTypeAllocator(extent: interop.Reference<number>, segments: interop.Reference<number>, inwardNormals: boolean, geometryType: MDLGeometryType, allocator: MDLMeshBufferAllocator): this;
initWithBufferAllocator(bufferAllocator: MDLMeshBufferAllocator): this;
initWithVertexBufferVertexCountDescriptorSubmeshes(vertexBuffer: MDLMeshBuffer, vertexCount: number, descriptor: MDLVertexDescriptor, submeshes: NSArray<MDLSubmesh> | MDLSubmesh[]): this;
initWithVertexBuffersVertexCountDescriptorSubmeshes(vertexBuffers: NSArray<MDLMeshBuffer> | MDLMeshBuffer[], vertexCount: number, descriptor: MDLVertexDescriptor, submeshes: NSArray<MDLSubmesh> | MDLSubmesh[]): this;
makeVerticesUnique(): void;
makeVerticesUniqueAndReturnError(): boolean;
removeAttributeNamed(name: string): void;
replaceAttributeNamedWithData(name: string, newData: MDLVertexAttributeData): void;
updateAttributeNamedWithData(name: string, newData: MDLVertexAttributeData): void;
vertexAttributeDataForAttributeNamed(name: string): MDLVertexAttributeData;
vertexAttributeDataForAttributeNamedAsFormat(name: string, format: MDLVertexFormat): MDLVertexAttributeData;
}
interface MDLMeshBuffer extends NSCopying, NSObjectProtocol {
allocator: MDLMeshBufferAllocator;
length: number;
type: MDLMeshBufferType;
fillDataOffset(data: NSData, offset: number): void;
map(): MDLMeshBufferMap;
}
declare var MDLMeshBuffer: {
prototype: MDLMeshBuffer;
};
interface MDLMeshBufferAllocator extends NSObjectProtocol {
newBufferFromZoneDataType(zone: MDLMeshBufferZone, data: NSData, type: MDLMeshBufferType): MDLMeshBuffer;
newBufferFromZoneLengthType(zone: MDLMeshBufferZone, length: number, type: MDLMeshBufferType): MDLMeshBuffer;
newBufferType(length: number, type: MDLMeshBufferType): MDLMeshBuffer;
newBufferWithDataType(data: NSData, type: MDLMeshBufferType): MDLMeshBuffer;
newZone(capacity: number): MDLMeshBufferZone;
newZoneForBuffersWithSizeAndType(sizes: NSArray<number> | number[], types: NSArray<number> | number[]): MDLMeshBufferZone;
}
declare var MDLMeshBufferAllocator: {
prototype: MDLMeshBufferAllocator;
};
declare class MDLMeshBufferData extends NSObject implements MDLMeshBuffer {
static alloc(): MDLMeshBufferData; // inherited from NSObject
static new(): MDLMeshBufferData; // inherited from NSObject
readonly data: NSData;
readonly allocator: MDLMeshBufferAllocator; // inherited from MDLMeshBuffer
readonly debugDescription: string; // inherited from NSObjectProtocol
readonly description: string; // inherited from NSObjectProtocol
readonly hash: number; // inherited from NSObjectProtocol
readonly isProxy: boolean; // inherited from NSObjectProtocol
readonly length: number; // inherited from MDLMeshBuffer
readonly superclass: typeof NSObject; // inherited from NSObjectProtocol
readonly type: MDLMeshBufferType; // inherited from MDLMeshBuffer
readonly // inherited from MDLMeshBuffer
constructor(o: { type: MDLMeshBufferType; data: NSData; });
constructor(o: { type: MDLMeshBufferType; length: number; });
class(): typeof NSObject;
conformsToProtocol(aProtocol: any /* Protocol */): boolean;
copyWithZone(zone: interop.Pointer | interop.Reference<any>): any;
fillDataOffset(data: NSData, offset: number): void;
initWithTypeData(type: MDLMeshBufferType, data: NSData): this;
initWithTypeLength(type: MDLMeshBufferType, length: number): this;
isEqual(object: any): boolean;
isKindOfClass(aClass: typeof NSObject): boolean;
isMemberOfClass(aClass: typeof NSObject): boolean;
map(): MDLMeshBufferMap;
performSelector(aSelector: string): any;
performSelectorWithObject(aSelector: string, object: any): any;
performSelectorWithObjectWithObject(aSelector: string, object1: any, object2: any): any;
respondsToSelector(aSelector: string): boolean;
retainCount(): number;
self(): this;
}
declare class MDLMeshBufferDataAllocator extends NSObject implements MDLMeshBufferAllocator {
static alloc(): MDLMeshBufferDataAllocator; // inherited from NSObject
static new(): MDLMeshBufferDataAllocator; // inherited from NSObject
readonly debugDescription: string; // inherited from NSObjectProtocol
readonly description: string; // inherited from NSObjectProtocol
readonly hash: number; // inherited from NSObjectProtocol
readonly isProxy: boolean; // inherited from NSObjectProtocol
readonly superclass: typeof NSObject; // inherited from NSObjectProtocol
readonly // inherited from NSObjectProtocol
class(): typeof NSObject;
conformsToProtocol(aProtocol: any /* Protocol */): boolean;
isEqual(object: any): boolean;
isKindOfClass(aClass: typeof NSObject): boolean;
isMemberOfClass(aClass: typeof NSObject): boolean;
newBufferFromZoneDataType(zone: MDLMeshBufferZone, data: NSData, type: MDLMeshBufferType): MDLMeshBuffer;
newBufferFromZoneLengthType(zone: MDLMeshBufferZone, length: number, type: MDLMeshBufferType): MDLMeshBuffer;
newBufferType(length: number, type: MDLMeshBufferType): MDLMeshBuffer;
newBufferWithDataType(data: NSData, type: MDLMeshBufferType): MDLMeshBuffer;
newZone(capacity: number): MDLMeshBufferZone;
newZoneForBuffersWithSizeAndType(sizes: NSArray<number> | number[], types: NSArray<number> | number[]): MDLMeshBufferZone;
performSelector(aSelector: string): any;
performSelectorWithObject(aSelector: string, object: any): any;
performSelectorWithObjectWithObject(aSelector: string, object1: any, object2: any): any;
respondsToSele