If you want to use the 'background tasks' functionality, you'll need to use document.asynchronousExportFile(). AsynchronousExportFile returns a background task, which has the method waitForTask().
You can use it something like this:
t = app.activeDocument.asynchronousExportFile(ExportFormat.pdfType, File("~/Desktop/Test.pdf")); t.waitForTask(); alert("Task is done")
This will export your document as a PDF using a background task, wait for the export to complete, and then pop up an alert. The problem is that you loose the advantages of a background task (namely, you can do other things while the file is exporting in the background).
The backgroundTask object has a property status, which returns the status of the task, including TaskState.COMPLETED. You could probably add an event listener to check for the state change from TaskState.RUNNING to TaskState.COMPLETED. When I get a bit more time later, i'll check it out and try to provide some sample code.
Automatic dialog after background export (exportPop.jsx) by John Hawkinson
This script will automatically pop up a dialog box after every export finishes (PDF, IDML, whatever). It also makes sure that the Background Tasks window is turned on.