import type { _NSData } from "../Foundation/NSData.js";
import type { _NSError } from "../Foundation/NSError.js";
import type { _NSURLRequest } from "../Foundation/NSURLRequest.js";
import type { _NSURLResponse } from "../Foundation/NSURLResponse.js";
export interface _WKURLSchemeTask {
    /**
     * Set the current response object for the task. The response to use. This method must be called at least once for each URL scheme handler task. Cross-origin requests require CORS header fields. An exception will be thrown if you try to send a new response object after the task has already been completed. An exception will be thrown if your app has been told to stop loading this task via the registered WKURLSchemeHandler object.
     */
    didReceiveResponse$?(response: _NSURLResponse): void;
    /**
     * Add received data to the task. The data to add. After a URL scheme handler task's final response object is received you should start sending it data. Each time this method is called the data you send will be appended to all previous data. An exception will be thrown if you try to send the task any data before sending it a response. An exception will be thrown if you try to send the task any data after the task has already been completed. An exception will be thrown if your app has been told to stop loading this task via the registered WKURLSchemeHandler object.
     */
    didReceiveData$?(data: _NSData): void;
    /**
     * Mark the task as successfully completed. An exception will be thrown if you try to finish the task before sending it a response. An exception will be thrown if you try to mark a task completed after it has already been marked completed or failed. An exception will be thrown if your app has been told to stop loading this task via the registered WKURLSchemeHandler object.
     */
    didFinish?(): void;
    /**
     * Mark the task as failed. A description of the error that caused the task to fail. An exception will be thrown if you try to mark a task failed after it has already been marked completed or failed. An exception will be thrown if your app has been told to stop loading this task via the registered WKURLSchemeHandler object.
     */
    didFailWithError$?(error: _NSError): void;
    /** The request to load for this task. */
    request?(): _NSURLRequest;
}
