import type { _NSCopying } from "./NSCopying.js";
import type { _NSData } from "./NSData.js";
import type { _NSDictionary } from "./NSDictionary.js";
import type { _NSObject } from "./NSObject.js";
import type { _NSSecureCoding } from "./NSSecureCoding.js";
import type { _NSURLResponse } from "./NSURLResponse.js";
import type { NSURLCacheStoragePolicy } from "./NSURLCacheStoragePolicy.js";
export declare class _NSCachedURLResponse extends _NSObject {
    static alloc(): _NSCachedURLResponse;
    static new(): _NSCachedURLResponse;
    init(): _NSCachedURLResponse;
    /**
     * @method initWithResponse:data @abstract Initializes an NSCachedURLResponse with the given response and data. @discussion A default NSURLCacheStoragePolicy is used for NSCachedURLResponse objects initialized with this method: NSURLCacheStorageAllowed. @param response a NSURLResponse object. @param data an NSData object representing the URL content corresponding to the given response. @result an initialized NSCachedURLResponse.
     */
    initWithResponse$data$(response: _NSURLResponse, data: _NSData): _NSCachedURLResponse;
    /**
     * @method initWithResponse:data:userInfo:storagePolicy: @abstract Initializes an NSCachedURLResponse with the given response, data, user-info dictionary, and storage policy. @param response a NSURLResponse object. @param data an NSData object representing the URL content corresponding to the given response. @param userInfo a dictionary user-specified information to be stored with the NSCachedURLResponse. @param storagePolicy an NSURLCacheStoragePolicy constant. @result an initialized NSCachedURLResponse.
     */
    initWithResponse$data$userInfo$storagePolicy$(response: _NSURLResponse, data: _NSData, userInfo: _NSDictionary | null, storagePolicy: NSURLCacheStoragePolicy): _NSCachedURLResponse;
    /**
     * @abstract Returns the response wrapped by this instance. @result The response wrapped by this instance.
     */
    response(): _NSURLResponse;
    /** @abstract Returns the data of the receiver. @result The data of the receiver. */
    data(): _NSData;
    /**
     * @abstract Returns the userInfo dictionary of the receiver. @result The userInfo dictionary of the receiver.
     */
    userInfo(): _NSDictionary | null;
    /**
     * @abstract Returns the NSURLCacheStoragePolicy constant of the receiver. @result The NSURLCacheStoragePolicy constant of the receiver.
     */
    storagePolicy(): NSURLCacheStoragePolicy;
}
export interface _NSCachedURLResponse extends _NSSecureCoding, _NSCopying {
}
