How to convert into ES6 Async Function?

I am Looking to refactor my uploadPhoto function into Async Function can anyone give me some pointers on how to convert this into Async function using latest ES6 best practices?

let photoURL
export function uploadPhoto_change(event) {
    const files = $w("#uploadPhoto").value;
    $w("#uploadPhoto").fileType = "Image";
    $w('#btnUpload').enable()
    $w('#btnUpload').onClick(() => {
        if (files.length > 0) { 
            
            $w("#uploadPhoto").uploadFiles()
                .then((uploadedFiles) => {
                    uploadedFiles.forEach(uploadedFile => {
                        photoURL = uploadedFile.fileUrl
                        $w("#preview").src = photoURL
                        $w("#preview").show();

                    })

                    $w("#txtMessage").text = "Upload successful.";
                    $w("#txtMessage").show;

                })
                .catch((uploadError) => {
                    $w("#txtMessage").text = "File upload error: " + uploadError.errorCode;

                });
        } else { // Site visitor clicked button but didn't choose any files
            $w("#txtMessage").text = "Please choose a file to upload."
            $w("#txtMessage").show
        }
    })
}