import { WalletInterface } from '@bsv/sdk'; import { StorageClientBase, type StorageClientOptions } from './StorageClientBase'; /** * `StorageClient` implements the `WalletStorageProvider` interface which allows it to * serve as a BRC-100 wallet's active storage. * * Internally, it uses JSON-RPC over HTTPS to make requests of a remote server. * Typically this server uses the `StorageServer` class to implement the service. * * The `AuthFetch` component is used to secure and authenticate the requests to the remote server. * * `AuthFetch` is initialized with a BRC-100 wallet which establishes the identity of * the party making requests of the remote service. Responses must complete mutual * authentication. By default, the first authenticated server identity is trusted for * this client instance; callers can instead supply `serverIdentityKey` as an * independently validated pin. The distinct storage-provider identity advertised by * the authenticated `makeAvailable` response is authoritative by default; callers * can independently pin it with `storageIdentityKey`. * * For details of the API implemented, follow the "See also" link for the `WalletStorageProvider` interface. */ export declare class StorageClient extends StorageClientBase { constructor(wallet: WalletInterface, endpointUrl: string, options?: StorageClientOptions); /** * Make a JSON-RPC call to the remote server. * @param method The WalletStorage method name to call. * @param params The array of parameters to pass to the method in order. */ protected rpcCall(method: string, params: unknown[]): Promise; private startRpcLogging; private restoreRpcLogging; } //# sourceMappingURL=StorageClient.d.ts.map