import type { Promisable } from '@ariestools/sdk'; import { FetchJsonClient } from '@ariestools/sdk'; import type { Payload, QueryBoundWitness, Schema, XyoAddress } from '@xyo-network/sdk-protocol'; import { Semaphore } from 'async-mutex'; import { AbstractBridge } from '../bridge-abstract/index.js'; import type { BridgeExposeOptions, BridgeModule, BridgeParams, BridgeUnexposeOptions } from '../bridge-model/index.js'; import type { AnyConfigSchema, ModuleInstance, ModuleQueryResult } from '../module-model/index.js'; import type { HttpBridgeConfig } from './HttpBridgeConfig.js'; import { HttpBridgeModuleResolver } from './HttpBridgeModuleResolver.js'; import type { BridgeQuerySender } from './ModuleProxy/index.js'; export interface HttpBridgeParams extends BridgeParams> { fetchClient?: FetchJsonClient; } export declare class HttpBridge extends AbstractBridge implements BridgeModule, BridgeQuerySender { static readonly configSchemas: Schema[]; static readonly defaultConfigSchema: Schema; static readonly defaultFailureRetryTime: number; static readonly defaultMaxConnections = 4; static readonly defaultMaxPayloadSizeWarning: number; static readonly fetchClient: FetchJsonClient; static readonly maxFailureCacheSize = 1000; private _discoverRootsMutex; private _failureTimeCache; private _fetchClient?; private _querySemaphore?; private _resolver?; get clientUrl(): string; get failureRetryTime(): number; get fetchClient(): FetchJsonClient; get maxConnections(): number; get maxPayloadSizeWarning(): number; get querySemaphore(): Semaphore; get resolver(): HttpBridgeModuleResolver; exposeHandler(_id: string, _options?: BridgeExposeOptions): Promisable; exposedHandler(): Promisable; getRoots(force?: boolean): Promise; moduleUrl(address: XyoAddress): URL; sendBridgeQuery(targetAddress: XyoAddress, query: TQuery, payloads?: TIn[]): Promise>; unexposeHandler(_id: string, _options?: BridgeUnexposeOptions): Promisable; private getRootState; private resolveRootNode; } //# sourceMappingURL=HttpBridge.d.ts.map