declare const enum AU3DMixerAttenuationCurve { k3DMixerAttenuationCurve_Power = 0, k3DMixerAttenuationCurve_Exponential = 1, k3DMixerAttenuationCurve_Inverse = 2, k3DMixerAttenuationCurve_Linear = 3 } declare const enum AU3DMixerRenderingFlags { k3DMixerRenderingFlags_InterAuralDelay = 1, k3DMixerRenderingFlags_DopplerShift = 2, k3DMixerRenderingFlags_DistanceAttenuation = 4, k3DMixerRenderingFlags_DistanceFilter = 8, k3DMixerRenderingFlags_DistanceDiffusion = 16, k3DMixerRenderingFlags_LinearDistanceAttenuation = 32, k3DMixerRenderingFlags_ConstantReverbBlend = 64 } declare class AUAudioUnit extends NSObject { static alloc(): AUAudioUnit; // inherited from NSObject static instantiateWithComponentDescriptionOptionsCompletionHandler(componentDescription: AudioComponentDescription, options: AudioComponentInstantiationOptions, completionHandler: (p1: AUAudioUnit, p2: NSError) => void): void; static new(): AUAudioUnit; // inherited from NSObject static registerSubclassAsComponentDescriptionNameVersion(cls: typeof NSObject, componentDescription: AudioComponentDescription, name: string, version: number): void; /* readonly */ allParameterValues: boolean; /* readonly */ audioUnitName: string; /* readonly */ canPerformInput: boolean; /* readonly */ canPerformOutput: boolean; /* readonly */ canProcessInPlace: boolean; /* readonly */ channelCapabilities: NSArray; /* readonly */ component: interop.Pointer | interop.Reference; /* readonly */ componentDescription: AudioComponentDescription; /* readonly */ componentName: string; /* readonly */ componentVersion: number; contextName: string; currentPreset: AUAudioUnitPreset; /* readonly */ factoryPresets: NSArray; fullState: NSDictionary; fullStateForDocument: NSDictionary; /* readonly */ inputBusses: AUAudioUnitBusArray; inputEnabled: boolean; inputHandler: (p1: interop.Pointer | interop.Reference, p2: interop.Pointer | interop.Reference, p3: number, p4: number) => void; /* readonly */ latency: number; /* readonly */ manufacturerName: string; maximumFramesToRender: number; /* readonly */ musicDeviceOrEffect: boolean; musicalContextBlock: (p1: interop.Pointer | interop.Reference, p2: interop.Pointer | interop.Reference, p3: interop.Pointer | interop.Reference, p4: interop.Pointer | interop.Reference, p5: interop.Pointer | interop.Reference, p6: interop.Pointer | interop.Reference) => boolean; /* readonly */ outputBusses: AUAudioUnitBusArray; outputEnabled: boolean; outputProvider: (p1: interop.Pointer | interop.Reference, p2: interop.Pointer | interop.Reference, p3: number, p4: number, p5: interop.Pointer | interop.Reference) => number; /* readonly */ parameterTree: AUParameterTree; /* readonly */ renderBlock: (p1: interop.Pointer | interop.Reference, p2: interop.Pointer | interop.Reference, p3: number, p4: number, p5: interop.Pointer | interop.Reference, p6: (p1: interop.Pointer | interop.Reference, p2: interop.Pointer | interop.Reference, p3: number, p4: number, p5: interop.Pointer | interop.Reference) => number) => number; renderQuality: number; /* readonly */ renderResourcesAllocated: boolean; renderingOffline: boolean; /* readonly */ scheduleMIDIEventBlock: (p1: number, p2: number, p3: number, p4: string) => void; /* readonly */ scheduleParameterBlock: (p1: number, p2: number, p3: number, p4: number) => void; shouldBypassEffect: boolean; /* readonly */ tailTime: number; transportStateBlock: (p1: interop.Pointer | interop.Reference, p2: interop.Pointer | interop.Reference, p3: interop.Pointer | interop.Reference, p4: interop.Pointer | interop.Reference) => boolean; /* readonly */ virtualMIDICableCount: number; constructor(o: { componentDescription: AudioComponentDescription; }); constructor(o: { componentDescription: AudioComponentDescription; options: AudioComponentInstantiationOptions; }); allocateRenderResourcesAndReturnError(): boolean; deallocateRenderResources(): void; initWithComponentDescriptionError(componentDescription: AudioComponentDescription): this; initWithComponentDescriptionOptionsError(componentDescription: AudioComponentDescription, options: AudioComponentInstantiationOptions): this; parametersForOverviewWithCount(count: number): NSArray; removeRenderObserver(token: number): void; requestViewControllerWithCompletionHandler(completionHandler: (p1: UIViewController) => void): void; reset(): void; setRenderResourcesAllocated(flag: boolean): void; shouldChangeToFormatForBus(format: AVAudioFormat, bus: AUAudioUnitBus): boolean; startHardwareAndReturnError(): boolean; stopHardware(): void; tokenByAddingRenderObserver(observer: (p1: AudioUnitRenderActionFlags, p2: interop.Pointer | interop.Reference, p3: number, p4: number) => void): number; } declare class AUAudioUnitBus extends NSObject { static alloc(): AUAudioUnitBus; // inherited from NSObject static new(): AUAudioUnitBus; // inherited from NSObject /* readonly */ busType: AUAudioUnitBusType; contextPresentationLatency: number; enabled: boolean; /* readonly */ format: AVAudioFormat; /* readonly */ index: number; maximumChannelCount: number; name: string; /* readonly */ ownerAudioUnit: AUAudioUnit; supportedChannelCounts: NSArray; /* readonly */ supportedChannelLayoutTags: NSArray; constructor(o: { format: AVAudioFormat; }); initWithFormatError(format: AVAudioFormat): this; setFormatError(format: AVAudioFormat): boolean; } declare class AUAudioUnitBusArray extends NSObject implements NSFastEnumeration { static alloc(): AUAudioUnitBusArray; // inherited from NSObject static new(): AUAudioUnitBusArray; // inherited from NSObject /* readonly */ busType: AUAudioUnitBusType; /* readonly */ count: number; /* readonly */ countChangeable: boolean; /* readonly */ ownerAudioUnit: AUAudioUnit; [index: number]: AUAudioUnitBus; [Symbol.iterator](): Iterator; constructor(o: { audioUnit: AUAudioUnit; busType: AUAudioUnitBusType; }); constructor(o: { audioUnit: AUAudioUnit; busType: AUAudioUnitBusType; busses: NSArray; }); addObserverToAllBussesForKeyPathOptionsContext(observer: NSObject, keyPath: string, options: NSKeyValueObservingOptions, context: interop.Pointer | interop.Reference): void; initWithAudioUnitBusType(owner: AUAudioUnit, busType: AUAudioUnitBusType): this; initWithAudioUnitBusTypeBusses(owner: AUAudioUnit, busType: AUAudioUnitBusType, busArray: NSArray): this; objectAtIndexedSubscript(index: number): AUAudioUnitBus; removeObserverFromAllBussesForKeyPathContext(observer: NSObject, keyPath: string, context: interop.Pointer | interop.Reference): void; replaceBusses(busArray: NSArray): void; setBusCountError(count: number): boolean; } declare const enum AUAudioUnitBusType { Input = 1, Output = 2 } interface AUAudioUnitFactory extends NSExtensionRequestHandling { createAudioUnitWithComponentDescriptionError(desc: AudioComponentDescription): AUAudioUnit; } declare var AUAudioUnitFactory: { prototype: AUAudioUnitFactory; }; declare class AUAudioUnitPreset extends NSObject implements NSSecureCoding { static alloc(): AUAudioUnitPreset; // inherited from NSObject static new(): AUAudioUnitPreset; // inherited from NSObject static supportsSecureCoding(): boolean; name: string; number: number; constructor(o: { coder: NSCoder; }); // inherited from NSCoding encodeWithCoder(aCoder: NSCoder): void; initWithCoder(aDecoder: NSCoder): this; } declare class AUAudioUnitV2Bridge extends AUAudioUnit { static alloc(): AUAudioUnitV2Bridge; // inherited from NSObject static new(): AUAudioUnitV2Bridge; // inherited from NSObject } interface AUChannelInfo { inChannels: number; outChannels: number; } declare var AUChannelInfo: interop.StructType; interface AUDependentParameter { mScope: number; mParameterID: number; } declare var AUDependentParameter: interop.StructType; declare const enum AUHostTransportStateFlags { Changed = 1, Moving = 2, Recording = 4, Cycling = 8 } interface AUInputSamplesInOutputCallbackStruct { inputToOutputCallback: interop.FunctionReference<(p1: interop.Pointer | interop.Reference, p2: interop.Pointer | interop.Reference, p3: number, p4: number) => void>; userData: interop.Pointer | interop.Reference; } declare var AUInputSamplesInOutputCallbackStruct: interop.StructType; declare class AUParameter extends AUParameterNode implements NSSecureCoding { static alloc(): AUParameter; // inherited from NSObject static new(): AUParameter; // inherited from NSObject static supportsSecureCoding(): boolean; /* readonly */ address: number; /* readonly */ dependentParameters: NSArray; /* readonly */ flags: AudioUnitParameterOptions; /* readonly */ maxValue: number; /* readonly */ minValue: number; /* readonly */ unit: AudioUnitParameterUnit; /* readonly */ unitName: string; value: number; /* readonly */ valueStrings: NSArray; constructor(o: { coder: NSCoder; }); // inherited from NSCoding encodeWithCoder(aCoder: NSCoder): void; initWithCoder(aDecoder: NSCoder): this; setValueOriginator(value: number, originator: interop.Pointer | interop.Reference): void; setValueOriginatorAtHostTime(value: number, originator: interop.Pointer | interop.Reference, hostTime: number): void; stringFromValue(value: interop.Pointer | interop.Reference): string; valueFromString(string: string): number; } declare const enum AUParameterEventType { kParameterEvent_Immediate = 1, kParameterEvent_Ramped = 2 } declare class AUParameterGroup extends AUParameterNode implements NSSecureCoding { static alloc(): AUParameterGroup; // inherited from NSObject static new(): AUParameterGroup; // inherited from NSObject static supportsSecureCoding(): boolean; /* readonly */ allParameters: NSArray; /* readonly */ children: NSArray; constructor(o: { coder: NSCoder; }); // inherited from NSCoding encodeWithCoder(aCoder: NSCoder): void; initWithCoder(aDecoder: NSCoder): this; } declare class AUParameterNode extends NSObject { static alloc(): AUParameterNode; // inherited from NSObject static new(): AUParameterNode; // inherited from NSObject /* readonly */ displayName: string; /* readonly */ identifier: string; implementorDisplayNameWithLengthCallback: (p1: AUParameterNode, p2: number) => string; implementorStringFromValueCallback: (p1: AUParameter, p2: interop.Pointer | interop.Reference) => string; implementorValueFromStringCallback: (p1: AUParameter, p2: string) => number; implementorValueObserver: (p1: AUParameter, p2: number) => void; implementorValueProvider: (p1: AUParameter) => number; /* readonly */ keyPath: string; displayNameWithLength(maximumLength: number): string; removeParameterObserver(token: interop.Pointer | interop.Reference): void; tokenByAddingParameterObserver(observer: (p1: number, p2: number) => void): interop.Pointer | interop.Reference; tokenByAddingParameterRecordingObserver(observer: (p1: number, p2: interop.Pointer | interop.Reference) => void): interop.Pointer | interop.Reference; } declare class AUParameterTree extends AUParameterGroup implements NSSecureCoding { static alloc(): AUParameterTree; // inherited from NSObject static createGroupFromTemplateIdentifierNameAddressOffset(templateGroup: AUParameterGroup, identifier: string, name: string, addressOffset: number): AUParameterGroup; static createGroupTemplate(children: NSArray): AUParameterGroup; static createGroupWithIdentifierNameChildren(identifier: string, name: string, children: NSArray): AUParameterGroup; static createParameterWithIdentifierNameAddressMinMaxUnitUnitNameFlagsValueStringsDependentParameters(identifier: string, name: string, address: number, min: number, max: number, unit: AudioUnitParameterUnit, unitName: string, flags: AudioUnitParameterOptions, valueStrings: NSArray, dependentParameters: NSArray): AUParameter; static createTreeWithChildren(children: NSArray): AUParameterTree; static new(): AUParameterTree; // inherited from NSObject static supportsSecureCoding(): boolean; constructor(o: { coder: NSCoder; }); // inherited from NSCoding encodeWithCoder(aCoder: NSCoder): void; initWithCoder(aDecoder: NSCoder): this; parameterWithAddress(address: number): AUParameter; parameterWithIDScopeElement(paramID: number, scope: number, element: number): AUParameter; } interface AUPreset { presetNumber: number; presetName: string; } declare var AUPreset: interop.StructType; interface AURecordedParameterEvent { hostTime: number; address: number; value: number; } declare var AURecordedParameterEvent: interop.StructType; interface AURenderCallbackStruct { inputProc: interop.FunctionReference<(p1: interop.Pointer | interop.Reference, p2: interop.Pointer | interop.Reference, p3: interop.Pointer | interop.Reference, p4: number, p5: number, p6: interop.Pointer | interop.Reference) => number>; inputProcRefCon: interop.Pointer | interop.Reference; } declare var AURenderCallbackStruct: interop.StructType; declare const enum AURenderEventType { Parameter = 1, ParameterRamp = 2, MIDI = 8, MIDISysEx = 9 } declare const enum AUReverbRoomType { kReverbRoomType_SmallRoom = 0, kReverbRoomType_MediumRoom = 1, kReverbRoomType_LargeRoom = 2, kReverbRoomType_MediumHall = 3, kReverbRoomType_LargeHall = 4, kReverbRoomType_Plate = 5, kReverbRoomType_MediumChamber = 6, kReverbRoomType_LargeChamber = 7, kReverbRoomType_Cathedral = 8, kReverbRoomType_LargeRoom2 = 9, kReverbRoomType_MediumHall2 = 10, kReverbRoomType_MediumHall3 = 11, kReverbRoomType_LargeHall2 = 12 } interface AUSamplerBankPresetData { bankURL: NSURL; bankMSB: number; bankLSB: number; presetID: number; reserved: number; } declare var AUSamplerBankPresetData: interop.StructType; interface AUSamplerInstrumentData { fileURL: NSURL; instrumentType: number; bankMSB: number; bankLSB: number; presetID: number; } declare var AUSamplerInstrumentData: interop.StructType; declare const enum AUScheduledAudioSliceFlags { kScheduledAudioSliceFlag_Complete = 1, kScheduledAudioSliceFlag_BeganToRender = 2, kScheduledAudioSliceFlag_BeganToRenderLate = 4, kScheduledAudioSliceFlag_Loop = 8, kScheduledAudioSliceFlag_Interrupt = 16, kScheduledAudioSliceFlag_InterruptAtLoop = 32 } declare const enum AUSpatialMixerAttenuationCurve { kSpatialMixerAttenuationCurve_Power = 0, kSpatialMixerAttenuationCurve_Exponential = 1, kSpatialMixerAttenuationCurve_Inverse = 2, kSpatialMixerAttenuationCurve_Linear = 3 } declare const enum AUSpatialMixerRenderingFlags { kSpatialMixerRenderingFlags_InterAuralDelay = 1, kSpatialMixerRenderingFlags_DistanceAttenuation = 4 } declare const enum AUSpatializationAlgorithm { kSpatializationAlgorithm_EqualPowerPanning = 0, kSpatializationAlgorithm_SphericalHead = 1, kSpatializationAlgorithm_HRTF = 2, kSpatializationAlgorithm_SoundField = 3, kSpatializationAlgorithm_VectorBasedPanning = 4, kSpatializationAlgorithm_StereoPassThrough = 5 } declare function AudioComponentCopyName(inComponent: interop.Pointer | interop.Reference, outName: interop.Pointer | interop.Reference): number; declare function AudioComponentCount(inDesc: interop.Pointer | interop.Reference): number; interface AudioComponentDescription { componentType: number; componentSubType: number; componentManufacturer: number; componentFlags: number; componentFlagsMask: number; } declare var AudioComponentDescription: interop.StructType; declare function AudioComponentFindNext(inComponent: interop.Pointer | interop.Reference, inDesc: interop.Pointer | interop.Reference): interop.Pointer | interop.Reference; declare const enum AudioComponentFlags { kAudioComponentFlag_Unsearchable = 1, kAudioComponentFlag_SandboxSafe = 2, kAudioComponentFlag_IsV3AudioUnit = 4, kAudioComponentFlag_RequiresAsyncInstantiation = 8, kAudioComponentFlag_CanLoadInProcess = 16 } declare function AudioComponentGetDescription(inComponent: interop.Pointer | interop.Reference, outDesc: interop.Pointer | interop.Reference): number; declare function AudioComponentGetIcon(comp: interop.Pointer | interop.Reference, desiredPointSize: number): UIImage; declare function AudioComponentGetLastActiveTime(comp: interop.Pointer | interop.Reference): number; declare function AudioComponentGetVersion(inComponent: interop.Pointer | interop.Reference, outVersion: interop.Pointer | interop.Reference): number; declare function AudioComponentInstanceCanDo(inInstance: interop.Pointer | interop.Reference, inSelectorID: number): boolean; declare function AudioComponentInstanceDispose(inInstance: interop.Pointer | interop.Reference): number; declare function AudioComponentInstanceGetComponent(inInstance: interop.Pointer | interop.Reference): interop.Pointer | interop.Reference; declare function AudioComponentInstanceNew(inComponent: interop.Pointer | interop.Reference, outInstance: interop.Pointer | interop.Reference>): number; declare function AudioComponentInstantiate(inComponent: interop.Pointer | interop.Reference, inOptions: AudioComponentInstantiationOptions, inCompletionHandler: (p1: interop.Pointer | interop.Reference, p2: number) => void): void; declare const enum AudioComponentInstantiationOptions { kAudioComponentInstantiation_LoadOutOfProcess = 1, kAudioComponentInstantiation_LoadInProcess = 2 } interface AudioComponentPlugInInterface { Open: interop.FunctionReference<(p1: interop.Pointer | interop.Reference, p2: interop.Pointer | interop.Reference) => number>; Close: interop.FunctionReference<(p1: interop.Pointer | interop.Reference) => number>; Lookup: interop.FunctionReference<(p1: number) => interop.FunctionReference<(p1: interop.Pointer | interop.Reference) => number>>; reserved: interop.Pointer | interop.Reference; } declare var AudioComponentPlugInInterface: interop.StructType; declare function AudioComponentRegister(inDesc: interop.Pointer | interop.Reference, inName: string, inVersion: number, inFactory: interop.FunctionReference<(p1: interop.Pointer | interop.Reference) => interop.Pointer | interop.Reference>): interop.Pointer | interop.Reference; declare const enum AudioComponentValidationResult { kAudioComponentValidationResult_Unknown = 0, kAudioComponentValidationResult_Passed = 1, kAudioComponentValidationResult_Failed = 2, kAudioComponentValidationResult_TimedOut = 3, kAudioComponentValidationResult_UnauthorizedError_Open = 4, kAudioComponentValidationResult_UnauthorizedError_Init = 5 } declare function AudioOutputUnitGetHostIcon(au: interop.Pointer | interop.Reference, desiredPointSize: number): UIImage; interface AudioOutputUnitMIDICallbacks { userData: interop.Pointer | interop.Reference; MIDIEventProc: interop.FunctionReference<(p1: interop.Pointer | interop.Reference, p2: number, p3: number, p4: number, p5: number) => void>; MIDISysExProc: interop.FunctionReference<(p1: interop.Pointer | interop.Reference, p2: string, p3: number) => void>; } declare var AudioOutputUnitMIDICallbacks: interop.StructType; declare function AudioOutputUnitPublish(inDesc: interop.Pointer | interop.Reference, inName: string, inVersion: number, inOutputUnit: interop.Pointer | interop.Reference): number; declare function AudioOutputUnitStart(ci: interop.Pointer | interop.Reference): number; interface AudioOutputUnitStartAtTimeParams { mTimestamp: AudioTimeStamp; mFlags: number; } declare var AudioOutputUnitStartAtTimeParams: interop.StructType; declare function AudioOutputUnitStop(ci: interop.Pointer | interop.Reference): number; declare function AudioUnitAddPropertyListener(inUnit: interop.Pointer | interop.Reference, inID: number, inProc: interop.FunctionReference<(p1: interop.Pointer | interop.Reference, p2: interop.Pointer | interop.Reference, p3: number, p4: number, p5: number) => void>, inProcUserData: interop.Pointer | interop.Reference): number; declare function AudioUnitAddRenderNotify(inUnit: interop.Pointer | interop.Reference, inProc: interop.FunctionReference<(p1: interop.Pointer | interop.Reference, p2: interop.Pointer | interop.Reference, p3: interop.Pointer | interop.Reference, p4: number, p5: number, p6: interop.Pointer | interop.Reference) => number>, inProcUserData: interop.Pointer | interop.Reference): number; interface AudioUnitConnection { sourceAudioUnit: interop.Pointer | interop.Reference; sourceOutputNumber: number; destInputNumber: number; } declare var AudioUnitConnection: interop.StructType; interface AudioUnitExternalBuffer { buffer: string; size: number; } declare var AudioUnitExternalBuffer: interop.StructType; interface AudioUnitFrequencyResponseBin { mFrequency: number; mMagnitude: number; } declare var AudioUnitFrequencyResponseBin: interop.StructType; declare function AudioUnitGetParameter(inUnit: interop.Pointer | interop.Reference, inID: number, inScope: number, inElement: number, outValue: interop.Pointer | interop.Reference): number; declare function AudioUnitGetProperty(inUnit: interop.Pointer | interop.Reference, inID: number, inScope: number, inElement: number, outData: interop.Pointer | interop.Reference, ioDataSize: interop.Pointer | interop.Reference): number; declare function AudioUnitGetPropertyInfo(inUnit: interop.Pointer | interop.Reference, inID: number, inScope: number, inElement: number, outDataSize: interop.Pointer | interop.Reference, outWritable: string): number; declare function AudioUnitInitialize(inUnit: interop.Pointer | interop.Reference): number; interface AudioUnitMeterClipping { peakValueSinceLastCall: number; sawInfinity: boolean; sawNotANumber: boolean; } declare var AudioUnitMeterClipping: interop.StructType; interface AudioUnitParameter { mAudioUnit: interop.Pointer | interop.Reference; mParameterID: number; mScope: number; mElement: number; } declare var AudioUnitParameter: interop.StructType; interface AudioUnitParameterHistoryInfo { updatesPerSecond: number; historyDurationInSeconds: number; } declare var AudioUnitParameterHistoryInfo: interop.StructType; interface AudioUnitParameterIDName { inID: number; inDesiredLength: number; outName: string; } declare var AudioUnitParameterIDName: interop.StructType; interface AudioUnitParameterInfo { name: interop.Reference; unitName: string; clumpID: number; cfNameString: string; unit: AudioUnitParameterUnit; minValue: number; maxValue: number; defaultValue: number; flags: AudioUnitParameterOptions; } declare var AudioUnitParameterInfo: interop.StructType; declare const enum AudioUnitParameterOptions { kAudioUnitParameterFlag_CFNameRelease = 16, kAudioUnitParameterFlag_OmitFromPresets = 8192, kAudioUnitParameterFlag_PlotHistory = 16384, kAudioUnitParameterFlag_MeterReadOnly = 32768, kAudioUnitParameterFlag_DisplayMask = 4653056, kAudioUnitParameterFlag_DisplaySquareRoot = 65536, kAudioUnitParameterFlag_DisplaySquared = 131072, kAudioUnitParameterFlag_DisplayCubed = 196608, kAudioUnitParameterFlag_DisplayCubeRoot = 262144, kAudioUnitParameterFlag_DisplayExponential = 327680, kAudioUnitParameterFlag_HasClump = 1048576, kAudioUnitParameterFlag_ValuesHaveStrings = 2097152, kAudioUnitParameterFlag_DisplayLogarithmic = 4194304, kAudioUnitParameterFlag_IsHighResolution = 8388608, kAudioUnitParameterFlag_NonRealTime = 16777216, kAudioUnitParameterFlag_CanRamp = 33554432, kAudioUnitParameterFlag_ExpertMode = 67108864, kAudioUnitParameterFlag_HasCFNameString = 134217728, kAudioUnitParameterFlag_IsGlobalMeta = 268435456, kAudioUnitParameterFlag_IsElementMeta = 536870912, kAudioUnitParameterFlag_IsReadable = 1073741824, kAudioUnitParameterFlag_IsWritable = 2147483648 } interface AudioUnitParameterStringFromValue { inParamID: number; inValue: interop.Pointer | interop.Reference; outString: string; } declare var AudioUnitParameterStringFromValue: interop.StructType; declare const enum AudioUnitParameterUnit { kAudioUnitParameterUnit_Generic = 0, kAudioUnitParameterUnit_Indexed = 1, kAudioUnitParameterUnit_Boolean = 2, kAudioUnitParameterUnit_Percent = 3, kAudioUnitParameterUnit_Seconds = 4, kAudioUnitParameterUnit_SampleFrames = 5, kAudioUnitParameterUnit_Phase = 6, kAudioUnitParameterUnit_Rate = 7, kAudioUnitParameterUnit_Hertz = 8, kAudioUnitParameterUnit_Cents = 9, kAudioUnitParameterUnit_RelativeSemiTones = 10, kAudioUnitParameterUnit_MIDINoteNumber = 11, kAudioUnitParameterUnit_MIDIController = 12, kAudioUnitParameterUnit_Decibels = 13, kAudioUnitParameterUnit_LinearGain = 14, kAudioUnitParameterUnit_Degrees = 15, kAudioUnitParameterUnit_EqualPowerCrossfade = 16, kAudioUnitParameterUnit_MixerFaderCurve1 = 17, kAudioUnitParameterUnit_Pan = 18, kAudioUnitParameterUnit_Meters = 19, kAudioUnitParameterUnit_AbsoluteCents = 20, kAudioUnitParameterUnit_Octaves = 21, kAudioUnitParameterUnit_BPM = 22, kAudioUnitParameterUnit_Beats = 23, kAudioUnitParameterUnit_Milliseconds = 24, kAudioUnitParameterUnit_Ratio = 25, kAudioUnitParameterUnit_CustomUnit = 26 } interface AudioUnitParameterValueFromString { inParamID: number; inString: string; outValue: number; } declare var AudioUnitParameterValueFromString: interop.StructType; declare function AudioUnitProcess(inUnit: interop.Pointer | interop.Reference, ioActionFlags: interop.Pointer | interop.Reference, inTimeStamp: interop.Pointer | interop.Reference, inNumberFrames: number, ioData: interop.Pointer | interop.Reference): number; declare function AudioUnitProcessMultiple(inUnit: interop.Pointer | interop.Reference, ioActionFlags: interop.Pointer | interop.Reference, inTimeStamp: interop.Pointer | interop.Reference, inNumberFrames: number, inNumberInputBufferLists: number, inInputBufferLists: interop.Pointer | interop.Reference>, inNumberOutputBufferLists: number, ioOutputBufferLists: interop.Pointer | interop.Reference>): number; interface AudioUnitProperty { mAudioUnit: interop.Pointer | interop.Reference; mPropertyID: number; mScope: number; mElement: number; } declare var AudioUnitProperty: interop.StructType; declare const enum AudioUnitRemoteControlEvent { kAudioUnitRemoteControlEvent_TogglePlayPause = 1, kAudioUnitRemoteControlEvent_ToggleRecord = 2, kAudioUnitRemoteControlEvent_Rewind = 3 } declare function AudioUnitRemovePropertyListenerWithUserData(inUnit: interop.Pointer | interop.Reference, inID: number, inProc: interop.FunctionReference<(p1: interop.Pointer | interop.Reference, p2: interop.Pointer | interop.Reference, p3: number, p4: number, p5: number) => void>, inProcUserData: interop.Pointer | interop.Reference): number; declare function AudioUnitRemoveRenderNotify(inUnit: interop.Pointer | interop.Reference, inProc: interop.FunctionReference<(p1: interop.Pointer | interop.Reference, p2: interop.Pointer | interop.Reference, p3: interop.Pointer | interop.Reference, p4: number, p5: number, p6: interop.Pointer | interop.Reference) => number>, inProcUserData: interop.Pointer | interop.Reference): number; declare function AudioUnitRender(inUnit: interop.Pointer | interop.Reference, ioActionFlags: interop.Pointer | interop.Reference, inTimeStamp: interop.Pointer | interop.Reference, inOutputBusNumber: number, inNumberFrames: number, ioData: interop.Pointer | interop.Reference): number; declare const enum AudioUnitRenderActionFlags { kAudioUnitRenderAction_PreRender = 4, kAudioUnitRenderAction_PostRender = 8, kAudioUnitRenderAction_OutputIsSilence = 16, kAudioOfflineUnitRenderAction_Preflight = 32, kAudioOfflineUnitRenderAction_Render = 64, kAudioOfflineUnitRenderAction_Complete = 128, kAudioUnitRenderAction_PostRenderError = 256, kAudioUnitRenderAction_DoNotCheckRenderArgs = 512 } declare function AudioUnitReset(inUnit: interop.Pointer | interop.Reference, inScope: number, inElement: number): number; declare function AudioUnitSetParameter(inUnit: interop.Pointer | interop.Reference, inID: number, inScope: number, inElement: number, inValue: number, inBufferOffsetInFrames: number): number; declare function AudioUnitSetProperty(inUnit: interop.Pointer | interop.Reference, inID: number, inScope: number, inElement: number, inData: interop.Pointer | interop.Reference, inDataSize: number): number; declare function AudioUnitUninitialize(inUnit: interop.Pointer | interop.Reference): number; interface HostCallbackInfo { hostUserData: interop.Pointer | interop.Reference; beatAndTempoProc: interop.FunctionReference<(p1: interop.Pointer | interop.Reference, p2: interop.Pointer | interop.Reference, p3: interop.Pointer | interop.Reference) => number>; musicalTimeLocationProc: interop.FunctionReference<(p1: interop.Pointer | interop.Reference, p2: interop.Pointer | interop.Reference, p3: interop.Pointer | interop.Reference, p4: interop.Pointer | interop.Reference, p5: interop.Pointer | interop.Reference) => number>; transportStateProc: interop.FunctionReference<(p1: interop.Pointer | interop.Reference, p2: string, p3: string, p4: interop.Pointer | interop.Reference, p5: string, p6: interop.Pointer | interop.Reference, p7: interop.Pointer | interop.Reference) => number>; transportStateProc2: interop.FunctionReference<(p1: interop.Pointer | interop.Reference, p2: string, p3: string, p4: string, p5: interop.Pointer | interop.Reference, p6: string, p7: interop.Pointer | interop.Reference, p8: interop.Pointer | interop.Reference) => number>; } declare var HostCallbackInfo: interop.StructType; interface MixerDistanceParams { mReferenceDistance: number; mMaxDistance: number; mMaxAttenuation: number; } declare var MixerDistanceParams: interop.StructType; declare function MusicDeviceMIDIEvent(inUnit: interop.Pointer | interop.Reference, inStatus: number, inData1: number, inData2: number, inOffsetSampleFrame: number): number; interface MusicDeviceNoteParams { argCount: number; mPitch: number; mVelocity: number; mControls: interop.Reference; } declare var MusicDeviceNoteParams: interop.StructType; declare function MusicDeviceStartNote(inUnit: interop.Pointer | interop.Reference, inInstrument: number, inGroupID: number, outNoteInstanceID: interop.Pointer | interop.Reference, inOffsetSampleFrame: number, inParams: interop.Pointer | interop.Reference): number; interface MusicDeviceStdNoteParams { argCount: number; mPitch: number; mVelocity: number; } declare var MusicDeviceStdNoteParams: interop.StructType; declare function MusicDeviceStopNote(inUnit: interop.Pointer | interop.Reference, inGroupID: number, inNoteInstanceID: number, inOffsetSampleFrame: number): number; declare function MusicDeviceSysEx(inUnit: interop.Pointer | interop.Reference, inData: string, inLength: number): number; interface NoteParamsControlValue { mID: number; mValue: number; } declare var NoteParamsControlValue: interop.StructType; interface ScheduledAudioFileRegion { mTimeStamp: AudioTimeStamp; mCompletionProc: interop.FunctionReference<(p1: interop.Pointer | interop.Reference, p2: interop.Pointer | interop.Reference, p3: number) => void>; mCompletionProcUserData: interop.Pointer | interop.Reference; mAudioFile: interop.Pointer | interop.Reference; mLoopCount: number; mStartFrame: number; mFramesToPlay: number; } declare var ScheduledAudioFileRegion: interop.StructType; interface ScheduledAudioSlice { mTimeStamp: AudioTimeStamp; mCompletionProc: interop.FunctionReference<(p1: interop.Pointer | interop.Reference, p2: interop.Pointer | interop.Reference) => void>; mCompletionProcUserData: interop.Pointer | interop.Reference; mFlags: AUScheduledAudioSliceFlags; mReserved: number; mReserved2: interop.Pointer | interop.Reference; mNumberFrames: number; mBufferList: interop.Pointer | interop.Reference; } declare var ScheduledAudioSlice: interop.StructType; declare var kAudioComponentInstanceInvalidationNotification: string; declare var kAudioComponentRegistrationsChangedNotification: string;