import type { _SFSpeechRecognitionResult } from "./SFSpeechRecognitionResult.js";
import type { _SFSpeechRecognitionTask } from "./SFSpeechRecognitionTask.js";
import type { _SFTranscription } from "./SFTranscription.js";
export interface _SFSpeechRecognitionTaskDelegate {
    /**
     * Tells the delegate when the task first detects speech in the source audio. - Parameters: - task: The speech recognition task (an ``SFSpeechRecognitionTask`` object) that represents the request.
     */
    speechRecognitionDidDetectSpeech$?(task: _SFSpeechRecognitionTask): void;
    /**
     * Tells the delegate that a hypothesized transcription is available. This method is called for all recognitions, including partial recognitions. - Parameters: - task: The speech recognition task (an ``SFSpeechRecognitionTask`` object) that represents the request. - transcription: The hypothesized transcription in an ``SFTranscription`` object.
     */
    speechRecognitionTask$didHypothesizeTranscription$?(task: _SFSpeechRecognitionTask, transcription: _SFTranscription): void;
    /**
     * Tells the delegate when the final utterance is recognized. When this method is called, the delegate should expect no further information about the utterance to be reported. - Parameters: - task: The speech recognition task (an ``SFSpeechRecognitionTask`` object) that represents the request. - recognitionResult: A recognized utterance that contains one or more transcription hypotheses in an ``SFSpeechRecognitionResult`` object.
     */
    speechRecognitionTask$didFinishRecognition$?(task: _SFSpeechRecognitionTask, recognitionResult: _SFSpeechRecognitionResult): void;
    /**
     * Tells the delegate when the task is no longer accepting new audio input, even if final processing is in progress. - Parameters: - task: The speech recognition task (an ``SFSpeechRecognitionTask`` object) that represents the request.
     */
    speechRecognitionTaskFinishedReadingAudio$?(task: _SFSpeechRecognitionTask): void;
    /**
     * Tells the delegate that the task has been canceled. A speech recognition task can be canceled by the user, by your app, or by the system. - Parameters: - task: The speech recognition task (an ``SFSpeechRecognitionTask`` object) that represents the request.
     */
    speechRecognitionTaskWasCancelled$?(task: _SFSpeechRecognitionTask): void;
    /**
     * Tells the delegate when the recognition of all requested utterances is finished. - Parameters: - task: The speech recognition task (an ``SFSpeechRecognitionTask`` object) that represents the request. - successfully: A Boolean value that indicates whether the task was successful. When this parameter is `false`, use the ``SFSpeechRecognitionTask/error`` property of the task to get information about why the task was unsuccessful.
     */
    speechRecognitionTask$didFinishSuccessfully$?(task: _SFSpeechRecognitionTask, successfully: boolean): void;
    /**
     * Tells the delegate how much audio has been processed by the task. - Parameters: - task: The speech recognition task (an ``SFSpeechRecognitionTask`` object) that represents the request. - duration: The seconds of audio input that the recognizer has processed.
     */
    speechRecognitionTask$didProcessAudioDuration$?(task: _SFSpeechRecognitionTask, duration: number): void;
}
