import type { _SNRequest } from "./SNRequest.js";
import type { _SNResult } from "./SNResult.js";
import type { _NSError } from "../Foundation/NSError.js";
export interface _SNResultsObserving {
    /**
     * Provides a new analysis result to the client with the specified time range This function will be called each time a new analysis result is available. Different types of analysis may produce results at different rates, spanning different time ranges.
     */
    request$didProduceResult$?(request: _SNRequest, result: _SNResult): void;
    /**
     * Informs the client of an error produced during analysis If an error is produced by a request, that request will not produce any more results, and is in a terminal state. The request:didFailWithError and requestDidComplete methods are mutually exclusive.
     */
    request$didFailWithError$?(request: _SNRequest, error: _NSError): void;
    /**
     * Informs the client that the analysis request was completed normally If an analysis request completes normally, that request will not produce any more results, and is in a terminal state. The request:didFailWithError and requestDidComplete methods are mutually exclusive.
     */
    requestDidComplete$?(request: _SNRequest): void;
}
