wttp-handler
Version:
WTTP handler for fetching data from WTTP sites
35 lines • 1.5 kB
TypeScript
import { RangeStruct, type IWTTPGateway, Method, GETResponseStruct, HEADResponseStruct, LOCATEResponseSecureStruct, OPTIONSResponseStruct, wURL } from "@wttp/core";
import { ethers } from "ethers";
export interface WTTPFetchOptions {
method?: Method;
headers?: {
ifModifiedSince?: number;
ifNoneMatch?: string;
rangeChunks?: RangeStruct;
rangeBytes?: RangeStruct;
};
signer?: ethers.Signer;
gateway?: string;
redirect?: "follow" | "error" | "manual";
}
export type WTTPResponse = HEADResponseStruct | LOCATEResponseSecureStruct | GETResponseStruct | OPTIONSResponseStruct;
export interface SimpleResponse {
status: number;
headers: Record<string, string>;
body: string | Uint8Array;
}
export declare function getChainId(alias: string): number | null;
export declare class WTTPHandler {
private signer;
private defaultChain;
private visited;
constructor(signer?: ethers.Signer, defaultChain?: string);
getGateway(chainId?: number, signer?: ethers.Signer, gateway?: string): IWTTPGateway;
connectProvider(chainId?: number, signer?: ethers.Signer, rpc?: string): ethers.Signer;
formatResponse(response: WTTPResponse, method: Method): SimpleResponse;
fetch(url: string | URL | wURL, options?: WTTPFetchOptions): Promise<Response>;
private createResponse;
isRedirect(status: number): boolean;
getAbsolutePath(url: string, base: string | URL | wURL): string;
}
//# sourceMappingURL=handler.d.ts.map