import type { SchemeCtx, StreamSubscription, ChannelProducerResult, PassthroughResult, RepresentationPreparationResult, UrlPath, EntryData, StoredEntryData, SchemeResult, ProjectionCaps } from "@plurnk/plurnk-schemes"; import { NetworkAddress } from "@plurnk/plurnk-schemes"; import WebFetcher, { WebMaterializationError } from "./WebFetcher.ts"; import LiveAcquisitions from "./LiveAcquisitions.ts"; export default class HttpGet { #private; constructor({ live, errorDetailLimit, webFetcher, address, requestHeaders, passthrough, requestMethod, reusableGetRepresentation, materializerIdentity, validators, materializationFailure, sourceMimetype, fresh, cancelled, bad, revalidationCorresponds, refreshAfter304, seedEntry, settleEventStream }: { errorDetailLimit: number; webFetcher: WebFetcher; address: (target: UrlPath) => NetworkAddress | PassthroughResult; requestHeaders: (metadata: readonly string[] | null) => Array<[string, string]> | (PassthroughResult & ChannelProducerResult); passthrough: (result: SchemeResult) => PassthroughResult & ChannelProducerResult; requestMethod: (priorHeader: string) => string | undefined; reusableGetRepresentation: (entry: StoredEntryData, requestHeaders: ReadonlyArray, projection: ProjectionCaps) => Promise; materializerIdentity: (priorHeader: string) => string | undefined; validators: (priorHeader: string) => Array<[string, string]>; materializationFailure: (url: string, method: string, error: WebMaterializationError) => PassthroughResult & ChannelProducerResult; sourceMimetype: (header: string) => string; fresh: (header: string, now?: number) => boolean; cancelled: (url: string, method: string) => PassthroughResult & ChannelProducerResult; bad: (status: number, scheme: string, kind: string, message: string, extensions?: Readonly>) => PassthroughResult & ChannelProducerResult; revalidationCorresponds: (priorHeader: string, responseHeaders: Headers) => boolean; refreshAfter304: (header: string, responseHeaders: ReadonlyArray, requestHeaders: ReadonlyArray) => string; seedEntry: () => EntryData; settleEventStream: (subscription: StreamSubscription, response: Response, options: { url: string; method: string; signal: AbortSignal; errorDetailLimit: number; }) => Promise; live: LiveAcquisitions; }); prepareGet(target: UrlPath, metadata: readonly string[] | null, pathname: string, ctx: SchemeCtx): Promise; } //# sourceMappingURL=HttpGet.d.ts.map