import type { Subly402ClientConfig, Subly402Signer } from "./types"; type FetchLike = (input: string | URL, init?: RequestInit) => Promise; export declare class Subly402Client { private readonly trustedFacilitators; private readonly maxPaymentPerRequest?; private readonly autoDeposit?; private readonly nitroAttestation; private readonly attestationVerifier; private readonly attestationCache; private readonly schemes; private defaultScheme?; constructor(config?: Subly402ClientConfig); register(network: string, scheme: Subly402ExactScheme): this; fetch(input: string | URL, options?: RequestInit, fetchImpl?: FetchLike): Promise; private findSchemeForNetwork; private assertBudget; private depositOnDemand; private verifyAttestation; private buildPaymentPayload; } export declare class Subly402ExactScheme { readonly signer: Subly402Signer; readonly scheme = "exact"; readonly wireScheme = "subly402-svm-v1"; constructor(signer: Subly402Signer); } export declare function wrapFetchWithSubly402Payment(fetchImpl: FetchLike, client: Subly402Client): FetchLike; export {}; //# sourceMappingURL=subly402.d.ts.map