/* eslint-disable */ // @ts-nocheck // @ts-ignore-start import { Result } from '../interface.uts' function dataToByteArray(data: Data): Array { const nsArray = UTSConversionHelper.dataToNSArray(data) const buffer: Array = [] if (nsArray != null) { for (const item of nsArray) { const num = item as NSNumber buffer.push(num.uint8Value) } } return buffer } export const requestPermission = async function (): Promise { return new Promise(resolve => { RecordPermission.requestRecordPermission((granted: boolean) => { if (granted) { resolve({ code: 0, data: {}, message: '成功' }) } else { resolve({ code: -1, data: {}, message: '失败' }) } }) }) } export const initAudio = async function (): Promise { return new Promise(resolve => { AudioRecorderManager.shared.initAudio((success: boolean, message: string) => { if (success) { resolve({ code: 0, data: {}, message: message }) } else { resolve({ code: -1, data: {}, message: message }) } }) }) } export async function onStartRecord(callback: (data: Array) => void): Promise { return new Promise(resolve => { AudioRecorderManager.shared.startRecord( (data: Data | null, success: boolean, message: string) => { if (data != null) { callback(dataToByteArray(data!)) } else if (success) { resolve({ code: 0, data: {}, message: message }) } else { resolve({ code: -1, data: {}, message: message }) } } ) }) } export const stopRecord = async function (): Promise { return new Promise(resolve => { AudioRecorderManager.shared.stopRecord( (success: boolean, message: string, filePath: string) => { if (success) { resolve({ code: 0, data: {}, message: message }) } else { resolve({ code: -1, data: {}, message: message }) } } ) }) } export const releaseRecord = async function (): Promise { return new Promise(resolve => { AudioRecorderManager.shared.releaseRecord((success: boolean, message: string) => { if (success) { resolve({ code: 0, data: {}, message: message }) } else { resolve({ code: -1, data: {}, message: message }) } }) }) } // @ts-ignore-end