import { type FetchResult } from './AbstractBinary.ts';
import { BucketBinary } from './BucketBinary.ts';
/**
 * NW.js binary adapter.
 *
 * Root directory: scraped from https://dl.nwjs.io/ (HTML index)
 * Sub directories: listed via Cloudflare R2 S3-compatible API (ListObjectsV2)
 *
 * The R2 bucket credentials are publicly available in the nwjs frontend page.
 * @see https://github.com/cnpm/cnpmcore/issues/891
 */
export declare class NwjsBinary extends BucketBinary {
    private r2Endpoint;
    private r2BucketName;
    private r2AccessKeyId;
    private r2SecretAccessKey;
    private r2Region;
    fetch(dir: string): Promise<FetchResult | undefined>;
    private fetchRootDir;
    private fetchSubDir;
    /**
     * Request R2 S3 ListObjectsV2 API with AWS Signature V4 authentication.
     */
    private requestR2Xml;
    private getSignatureKey;
}
