import { ParsedVaa } from "@certusone/wormhole-sdk"; import { FetchVaaFn } from "./context.js"; import { MakeOptional } from "./utils.js"; import { ParsedVaaWithBytes } from "./application.js"; export type VaaId = Pick; export type SerializedBatchFetcher = { vaaBytes: string[]; vaaIds: VaaId[]; }; interface VaaBundlerOpts { maxAttempts: number; delayBetweenAttemptsInMs: number; vaaIds: VaaId[]; } declare const defaultOpts: { maxAttempts: number; delayBetweenAttemptsInMs: number; }; export declare class VaaBundleFetcher { private fetchVaa; private readonly fetchedVaas; private readonly pendingVaas; private readonly fetchErrors; private opts; constructor(fetchVaa: FetchVaaFn, opts: MakeOptional); get isComplete(): boolean; get pctComplete(): number; static deserialize(serialized: SerializedBatchFetcher, fetchVaa: FetchVaaFn): VaaBundleFetcher; addVaaPayload(parsedVaa: ParsedVaaWithBytes): void; serialize(): SerializedBatchFetcher; build(): Promise; private idToKey; private fetchPending; /** * Adds a vaa payload to the builder. If this vaa was marked as pending, then it's moved to completed. * @param vaaBytesArr * @private */ private addVaaPayloads; private export; } export {};